Skip to main content

Full text of "Sextant Issue #1 Spring 1982"

See other formats












A Microsoft BASIC Simulation 
of Rubik’s Cube 



Features 


Heath/Zenith Computers: 

An Interview and Overview 

John Walker and David Johnstone 4 

Growth seems to be the keynote of the Heath/Zenith market¬ 
place these days. We give you here some of the dollars and 
cents of that growth with an interview of Donald P. Moffet, 
president of Zenith Data Systems. Plus an overview and 
evaluation of what makes this microcomputer marketplace 
different from the others. 


A Professional Writer Looks at Budget Word Processing 
Hugh Kenner 14 

With an Introduction by William F. Buckley, Jr. 


Colorful graphics for business meetings and 
training sessions — such as the 35 mm slide 
shown below—can be produced with your 
Zenith computer and a little imagination. 


How to Turn Zenith Screen Graphics into Color Slides 
F. X. “Skip”Millor 25 


Benton Harbor BASIC Tests Typing Reaction Time 

Raymond Dotson 30 

If you want to increase your typing speed and maybe make a 
game out of it, too, this program is made to order. 



Print Spoolers: A Background and Reviews of Six 
Software Products to Break Your Printer Bottleneck 

Kenneth A. Patrick 32 

As your system or your demands grow more complex, you may 
not like having your computer sitting around doing nothing 
until your printer has finished tapping out already processed 
data. Spooling is the software to take care of that. Here we 
give a brief history of spoolers and reviews of six spoolers of 
interest to the Heath/Zenith user. 


Rubik’s Cube: A Computer Simulation 
in Microsoft BASIC 

Arthur A. Frost 43 










Issue No. 1, Spring 1982 


Disk Programming Without HDOS 

Richard E. Smith 48 

There will be times and purposes when programmers will 
want to do without their computer’s operating system and do 
it all themselves. So how is it done? Easily! 


A Candid Look at Tiny Pascal 

Arnold R. Madeira 53 

Pascal is a great language for learning good programming 
skills. It costs $325. Its little brother, Tiny Pascal, may be 
more in line with your budget. 


A Parallel Interface for the ’89 

J.C.Hassall 61 


What’s a Company Like Zenith 
Doing in the Computer Business? 

Jerry K. Pearlman 7 5 

Jerry K. Pearlman is the Zenith Radio Corporation executive 
responsible for their computer business. These remarks are 
the best thing we’ve seen so far to explain how Zenith views 
their role in the microcomputer market. 


Departments 


The Editorial Eye 1 

Index to Advertisers 64 

Classified Ads 80 

Luminaries 80 



Hugh Kenner explains how he uses a $65 
word processing package to produce maga¬ 
zine articles for The New York Times Book 
Review , Harper's , and National Review. 


Want to add a parallel port to your 
H/Z89, or simply get an inside 
view of how the computer handles 
input and output of information? 


61 






















































































































IF YOU NEED 
MASS STORAGE, 



YOU NEED 
DATA COMPASS. 



Models 1-47/1-47 (1) 

$ 2795/ $ 1995 

Heath7Zenith®Equivalent 
“Intelligent” single or 
dual drive 8" flexible disk 
system. 

Models 1-48/1-48 (1) 

$ 1 795/ $ 1 1 50 Special Intro Price! 

Industry standard, single 
or dual drive 8" flexible 
disk system, (compatible 
with most popular micro¬ 
computers) 



DATA COMPASS has been serving the mini and microcomputer marketplace since 1975 . 

We are dedicated to the distribution and R & D of mass storage peripherals and subsystems. 
We will not confuse you (or spread our specialized technical support too thin) by offering 
printers, terminals or anything else not directly related to increasing your systems storage 
capacity. Data Compass carries full lines of disk drives including Remex, Siemens. Tandon 
and,others. 

For your convenience, we can accommodate Master Charge or Visa. 


Available through 

DATA COMPASS 

PERIPHERAL PRODUCTS GROUP 

2730 REGAL PARK DR. 
ANAHEIM. CA 92806 
(714) 630-7450 


DEALER/DISTRIBUTOR, OEM INQUIRIES IN¬ 
VITED. SEE US AT BOOTH #219 AT THE WEST 
COAST COMPUTER FAIRE. 



CIRCLE #101 ON READER SERVICE CARD 

















Photo by Sarah E. Juram. 


1 



There are two groups of Zenith computer users who had a lot to do with bringing SEXTANT into 
being. First, the 5,000 subscribers to Buss: The Independent Newsletter of Heath Co. 
Computers, whose confidence in us took the tangible expression of sextant subscription checks 
mailed as much as six months in advance. Some of these subscribers are also the advertisers 
whose ability to believe six impossible things before breakfast will no doubt prove a crucial 
factor in whatever commercial success they achieve. Others are the authors vho suffered 
through the informalities of our shakedown cruise. 

The second group consists of about six hundred people who declined to subscribe to Buss 
even after having seen a copy. Their comments suggested a market for a thicker publication 
more accessible to the novice Zenith user, but still interesting to the expert. 


★ 


I should also express my appreciation of Elizabeth Dillon, who insisted her ninth grade 
students turn in some written creation every Monday. The latitude of form she permitted was 
probably as important as the regularity of the requirement. I recently remarked to Bill Buckley 


202/544-0484 

Editorial Desk 


Charles Floto 
Editor 
Publisher 

Pamela Juram 

Assistant Publisher 
Director of Advertising 

John Walker 

Technical Editor 

Sharon E. Conaway 

Circulation Manager 
Production Assistant 

Cover photo by Charles Floto and Sarah E. Juram. 


202/544-2868 

Advertising Inquiries 


202/544-2867 

Author’s Inquiries 

202/544-0900 

Subscription Service 


Sextant is published quarterly by Sextant Publishing Co., 716 E St. 
SE, Washington, DC 20003. 

Copyright ^1982 by Sextant Publishing Co. All rights reserved. No 
part of this publication may be reprinted or otherwise reproduced 
without written permission from the publisher. Printed in USA by 
Everybodys Press, Hanover, PA 17331. Second-class postage applica¬ 
tion pending at Washington, DC and at additional mailing offices. 
Postmaster: Please send Form 3579 to Sextant, 716 E St. SE, 
Washington, DC 20003. ISSN 0731-2180 

Subscription rates: 1 year (4 issues) in U.S. — $9.97, in Canada and 
Mexico—$11.50, overseas-$14.00. Payment accepted by check in 
U.S. dollars payable on a U.S. bank, by U.S. and international 
postal money order, and by Visa and MasterCard. 

“Heath” and “Heathkit” are trademarks of the Heath Company. 
“CP/M” is a trademark of Digital Research. 


A 


Sextant Spring 1982 1 










that I consider writing the worst form of torture. On the other hand, it feels so good when it 
stops. 


★ 

In January I spoke to a retailer who, after years of selling Zenith televisions, recently took on 
the Zenith Data Systems line. He told of visiting the Chicago headquarters and hearing a vice 
president chortle over Zenith plans to out-IBM IBM.” The merchant’s only complaint was that 
Zenith lacked a low end machine he could sell against Atari home computers. 

That conversation suggests that Zenith’s having a home computer will aid in signing up 
retailers for Zenith Data Systems. More retailers means more sales. With an increased ZDS 
advertising effort, more software producers will realize we exist as a potential market for their 
products. 

It’s going to be a lot more fun for all of us in 1982; no longer will Zenith be the overlooked 
computer company. 


★ 

It looks as if Zenith will be the first computer manufacturer to actively support a national 
conference for its customers. Bill Parrott, who works on software for D-G Electronic 
Developments Co., came up with the idea. Zenith’s reaction was to grab the ball and run with it. 
The Heath Users’ Group announced in late January that the starting date was expected to be 
between July 8th and August 6th. Plans are to start on Friday evening, continue Saturday and 
Sunday, and offer a tour of the Heath Co. factory on Monday. HUG is seeking suggestions for 
the program, and invited the Capital Heath Users’ Group to choose the co-chairman. CHUG’s 
hundreds of members are located around the world a well as encircling the District of 
Columbia; I feel their involvement will be crucial to the project’s success. 

The rest of us should offer to help as well. If we sit back and let HUG do all the work, we’ll 
be passing up a chance to enhance the welfare of the entire Zenith computer community. If you 
can t make it to the conference yourself, you’ll be able to read all about it afterwards. Send your 
program suggestions to Heath Users’ Group, Hilltop Road, Saint Joseph, MI 49085. 


★ 

As a newsletter editor, I’ve always considered magazines a poor way to publish news. Most 
of the material in them is at least two months old. For example, our schedule calls for getting 
this issue to the printer February 8th. On the other hand, magazines do have advantages in the 
graphic tools available for communication. Don’t be surprised if this magazine exhibits a bias 
toward coverage of events that call for use of these tools. 


★ 

We do expect to be covering a couple of significant new products from Zenith this year. 
Our research will include meetings with key Heath/Zenith executives. They want their 
customers to have full information of Zenith products, but don’t want to tip off the competition 
too far in advance. Our summer issue is scheduled to be mailed about the time of the National 
Computer Conference, a traditional forum for new product announcements. With a little bit of 
luck, we should be able to have some news for you about then. If you want to be sure of getting 
the news without depending on the luck, turn to the three penultimate pages of this issue for an 

2 Sextant Spring 1982 


ad describing our newsletter published four times as frequently as the magazine. 

★ 

Speaking of ads, you’ll see many in this issue which are available in no other publication. 
The enterprises they represent vary quite a bit in size; some are well-established and some are 
part-time efforts. Some of the vendors serving the Zenith marketplace haven’t yet achieved such 
trappings of legitimacy as a daytime phone number and membership in the local Chamber of 
Commerce. Many of the products represent excellent values because they aren’t expected to 
support such overhead. 

Just as the Zenith marketplace is too small to support a full-time staff to sell a single special¬ 
ized product, it’s too small to attract dishonest advertisers. It doesn’t make any sense to plan on 
not shipping your “product’’ to Zenith owners, when for the same amount of trouble you could 
fail to ship it to hundreds of thousands of additional Apple and Radio Shack owners. 

★ 


We’re trying to get the magazine into as many computer stores as possible to increase the 
visibility of Zenith products and demonstrate how well supported they are. We’d appreciate 
your asking your local retailer to keep it on hand. 


★ 

One thing I like about being an editor is that it leads to personal contact with my readers. I’d 
like to know what you think of the magazine, so drop me a line with your suggestions for future 
issues. If you have any questions it’s probably best to call me at 202/544-0484. This line won’t 
be answered if I’m not available. See page 1 for our other telephone numbers. 



Two people in particular made this magazine 
possible: Carl and Dorothy. Dorothy, as she would 
be quick to point out, deserves most of the credit. 
Carl spent much of his life at sea. Dorothy studied 
celestial mechanics. 

I love them both very much, and will try to 
make sextant worthy of their memory. 



Sextant Spring 1982 3 




Heath/Zenith Computers: 

An Interview and Overview 

— John Walker and David Johnstone — 


Heath/Zenith computers to show 50% gain, 
Moffet predicts 

When 1981 sales figures are tabulated, Zenith 
Radio Corporation's computer business should reach 
a volume of more than $65 million: about a 50 
percent increase over 1980's $43.6 million. 

That was the prediction of Donald P. Moffet, 
president of Zenith Data Systems Corporation 
(ZDS). In an interview with sextant correspond¬ 
ent David Johnstone, Mr. Moffet said the increase 
might go as high as 60 percent, with sales totalling 
$70 million. In a year that has been tightly compet¬ 
itive for television manufacturers like Zenith, those 
figures are very easy to take. 

Zenith's Computer Business Group includes 
ZDS and the Heath Company's computer effort. 
Although it accounts for only a small part of 
Zenith's total sales dollars, it is an important part 
of the company's plans for the future. In one sense, 
those plans are being shaped today. In another 
sense, things began more than fifty years ago. Our 
interview with Mr. Moffet and our product review, 
below, emphasize the things that are happening 
today. Our other comments attempt to fill in some 
of the background and draw some possible conclu¬ 
sions about the future. 

SEXTANT interviews head of Zenith Data 
Systems 

sextant’s David Johnstone recently interviewed 
Donald P. Moffet, president of Zenith Data Sys¬ 
tems, at ZDS offices in Glenview, Illinois. With 
final 1981 sales figures still being processed as 
sextant went to press, our brief interview zeroed 
in on Mr. Moffet’s estimates of ZDS’s performance 
in the last year. The most important figure that 
emerged was his prediction of a 50 or possibly 60 
percent increase in sales over 1980. His other 
comments, however, also emphasized the growth 
that had taken place in both sales and personnel. 

Speaking of the sales and marketing operation 
there in Glenview, he pointed out that "a year ago, 
we had not more than two field men; today, we 
have ten in the field and 25 people in this build¬ 
ing.” 

He indicated that ZDS's distribution effort had 


grown similarly. "As late as June 30, we had eight 
distributors; today, there are 24," he said, refer¬ 
ring to them as providing ZDS with "a strong 
regional network". 

Growth has also been reflected in an expansion 



Donald P. Moffet 
President, Zenith Data Systems 


of physical plant. ZDS grew to the point where 
additional office space was required, and it moved 
to its current space at 950 Milwaukee Avenue in 
Glenview, about a half-mile from Zenith’s corpo¬ 
rate and administrative center at 1000 Milwaukee 
Avenue. 

Some software people are also working in the 
area, at Zenith’s Austin Avenue plant in Chicago. 
Production, though, is centered at the Heath Com- 


4 Sextant Spring 1982 




Introducing — 

THE NEW H8* COMPUTER 

* H8 is a Registered Trademark of the Heath Company 


PC Board Mounts Additional Pair of 
Connectors to Plug Into 90 Pin Bus 


Optional 40 Pin Connector Assembly 
Converts H8 Boards to 90 Pin Bus 


Fully Assembled Motherboard - $250,00 


Featuring the TRIONYX T-H90 MOTHERBOARD 
A Professional-Quality Bus for the H8 Computer 


• 3-Layer Board Has • 90 Pin Bus Has: 


Center Ground Plane 

• Designed For 4 MHZ 
Bus Operation 

• 7 Auxiliary Positions For 
Port Addressable Bus 
Interface Cards 

• Completely Compatable With 
Original H8 Computer 

PC Board $ 75.00 

25 Pin Gold Connectors - Set of 20 $45.00 

- Build Motherboard to Original H8 Standard 

20 Pin Gold Connectors - Set of 18 $34.00 

- Add Additional 40 Pins for 90 Pin Bus 

25 Pin Gold Connectors - Set of 14 $35.00 

- Add 7 Auxiliary Card Positions 


Additional Ground Connections 
For Reliable Operation 

8 Additional Data Bits For 16 Bit CPU Board 

Additional Address Lines For Expanded 
Memory Capacity 

Bank Select Lines For Memory Management 

Additional Lines For Special Control Signals 
and Future Defined Functions 

Power Supply Parts for Motherboard $16.00 

- Includes Extra +18 Volt Filter Capacitor 

Bus Termination Card - Complete Kit $29.50 

PC Board Connector Expansion Kit $15.00 

- Adapts Original H8 PC Boards to 90 Pin Bus: 
Contains PC Board, Two 20 Pin Connectors, 
Mounting Blocks and Hardware - One Kit 
Required Per PC Board 


The new T-H90 Motherboard has been designed to provide completely reliable operation of the H8 
computer through the use of gold-plated connectors and a well grounded bus. The bus has. been 
expanded from 50 to 90 lines and 7 additional card slots have been added. Full implementation of 
the Motherboard functions will transform the H8 into a commercial grade computer. 

Check • Money Order • VISA • MASTERCARD • C.O.D. 

Phone Orders Welcome (714) 830-2092 - Send For Free Brochure 

TRIONYX ELECTRONICS, INC 

P.O. BOX 5131, SANTA ANA, CA 92704 














' Complete Home ' 
Finance System (HDOS) 


• An extensive Home Finance System 
that keeps track of checking, savings and 
all your regular bill payments. Let your 
printer write your checks for you! 

• All checks coded with user specified 
codes. Separate flag for tax deductible 
checks. 

• List checks by codes or list all in the 
month. 

• System consists of a 109 page users 
manual and four disks, three with the 
system programs and one with sample 
data for learning. 


Hardware: H8/H19 or H89 with two 5 V 4 " drives. Printer 
strongly recommended (H44, H14 or others). 

Software: HDOS 1.6 and Microsoft MBASIC v. 4.7 require 
48K RAM. HDOS 2.0 and Microsoft MBASIC-80 require 
56K RAM. 


• Complete system $85 plus shipping; or 
manual alone $17 plus shipping. 


Order from: 

Jay H. Gold, M.D. 

Box 2024 *Des Moines, IA 50310*(515) 279-9821 
or a participating HEATHKIT ® Electronic Center. 

^ CIRCLE #102 ON READER SERVICE CARD 


pany’s headquarters in Benton Harbor/Saint Jo¬ 
seph, Michigan. There, a $2 million addition to the 
plant has been completed, bringing the facility to 
540,000 square feet. 

Mr. Moffet’s prediction of a 50 to 60 percent 
increase in sales would appear to put ZDS ahead of 
predictions for market-wide growth. Robert K. 
Reid, ZDS vice president for marketing, had else¬ 
where pointed out that industry analysts expect an 
annual unit sales growth rate of more than 30% 
through 1984. Domestic industry retail sales are 
expected to increase from 1979’s 300,000 units 
sold to 1.3 million units in 1984. Sales of video 
terminals are expected to grow at a 20 to 30 
percent annual rate through 1984. 

Looking to the future, Mr. Moffet expects 
microcomputer demand to be greatest and most 
rapidly developed among small business. He par¬ 
ticularly mentioned companies whose operations 
range from “a couple hundred thousand to $20 
million”; the legal and administrative department 
managers of Fortune 1000 companies; and self- 
employed professionals. These three, he said, “are 
the fastest growing part of the business.” 

Background: the Heath-Zenith connection 

In October 1979, Zenith Radio Corporation 
acquired the Heath Company of Benton Harbor, 
Michigan. Small by comparison with Zenith, the 


Heath Company is nonetheless the world’s largest 
manufacturer of kit-form electronics. The high- 
technology company was started in 1926 by Edward 
Bayard Heath with, for the time, a very high- 
technology beginning. It was a kit for building an 
airplane: a high-wing monoplane called the “Para¬ 
sol”. For today’s technology, though, the major 
development came just after World War II. Under 
the company’s owner at the time, Howard Anthony, 
Heath Company combined war surplus parts to 
offer a high quality oscilloscope kit at $39.95. On 
that success, the company built itself into the 
unquestioned leader in build-it-yourself electron¬ 
ics. Heathkit” has become virtually synonymous 
with electronics kits. 

Heath now markets more than 400 kit products 
in the United States, Canada, and Europe through 
mail order catalogs and more than 70 retail stores, 
the Heathkit Electronic Centers (HECs). The com¬ 
pany also produces self-paced learning programs, 
texts, and training equipment for electronics, com¬ 
puter programming, weather, and ham radio. Class¬ 
room versions are available for most of these 
courses. 

The computer connection 

In its purchase of the Heath Company, howev¬ 
er, Zenith may have found one aspect of Heath’s 
broad product line more important than the others. 
Interestingly, it is an area that many of the general 
public—and many professionals — may find an un¬ 
likely subject for the home kit builder: computers. 
We are only in the past few years considering the 
use of computers in the home. Building them at 
home seems to strike many as so much science 
fiction. Yet Heathkit computers have sold and sold 
well. They account today for about 40 percent of 
the Heath Company’s total sales. 

Some sort of “mental block” about computers 
being built at home, as it happens, may account for 
the fact that Heath/Zenith computers are so fre¬ 
quently overlooked in computer industry analyses 
and media accounts. Yet there are a lot of personal 
computers out there with the labels “Zenith” and 
“Heathkit” on them. 

A recent issue of Computer Retailing pointed 
out that Heath/Zenith is probably number three in 
the number of personal computers being sold 
today. And, in the words of Carl Warren, the 
article’s author, Heath/Zenith “is reportedly push¬ 
ing Apple for number two”. Estimates vary, and 
they are confused by differences over what ought 
to be included in the figures and what ought not. 
Sorting things out is more of an art than a science, 
but a recent article in InfoWorld tends to support 
that number three estimate. According to figures 
in their September 14, 1981 issue, Heath/Zenith 
came in at number five in 1980 sales figures. 
Attempting to factor our number three Commo¬ 
dore’s overseas sales, Heath/Zenith would seem to 
come in at around number three or four in the 


6 Sextant Spring 1982 







number of units sold annually in the United States. 
The Heath/Zenith product mix 

To Zenith, that sizeable—and underrated— 
chunk of the home computer market must have 
been attractive. Combined with Zenith’s already 
existing distribution capability and name recogni¬ 
tion, it made a very promising mix of possibilities 
for the future. Upon Heath’s purchase by Zenith, 
assembled versions of important Heath computer 
products were given a Zenith nomenclature for 
sale through Zenith channels. The Heath H89 
all-in-one computer became the Zenith Z89; the 
H19 terminal became the Z19, and so on. In 
general, the assembled equipment bears the Ze¬ 
nith label, the kit form still carries the Heathkit 
name. 

The quick mix of the Zenith name and the 
Heath technology came as no surprise. Calling a 
company like Zenith simply a “television manufac¬ 
turer’’ is a convenient oversimplification. The com¬ 
panies active in television are, and want to remain, 
on the leading edge of electronics technology that 
can be used in the home. They also want to extend 
their activities as much as possible into the small 
business market. The “information explosion” that 
is taking place in business is also taking place in 
the home. The business people who use microcom¬ 
puters at work this year may buy their own for use 


like Zenith were to let themselves be shut out of 
the office of the future, their presence in the home 
of the future would be greatly reduced. 

And plant capacity 

There have been short term considerations, 
too. The growth of the video terminal market must 
look good to a television manufacturer. Good 
enough, at least, that Zenith now offers its ZVM-121 
Video Monitor. A low-cost 12-inch video monitor, 
it was released late last year. This is perhaps one 
product, however, that may not be pushed overly 
much in the Heath marketplace. Housed in an 
“orchard brown” cabinet, the new monitor is com¬ 
patible in styling, size, and color with the Apple II 
and III microcomputers. That may raise a few 
eyebrows among Heath loyalists who might com¬ 
pare it to Mercedes-Benz turning out spare parts 
for Chryslers. But plant capacity is plant capacity 
and Zenith refers to put it to work rather have it sit 
idle. 

And it was the spectre of the idle Zenith plant 
capacity that opened up the Heathkit catalog to 
something long-time buyers might not have ex¬ 
pected: the new furniture-building kits. Prompted 
by unused capacity at Zenith’s TV cabinet opera¬ 
tions, it positions Heathkit for an interesting diver¬ 
sification into the home handyman field. Doing it 
yourself, with class, need not be limited to elec- 


at home next year. 

The unavoidable fact of life is that if companies 


tronics, it seems. 

So, some predictable and some unexpected 


DOUBLE DENSITY 
DISK CONTROLLER 

FOR THE HEATH/ZENITH 89 COMPUTER 

Need additional disk storage capacity? Use this 
controller board to add up to four 8" single- or 
double-sided industry-standard drives, as well as 
four 5" single- or double-sided, 40- or 80-track C48 
or 96 TPI) drives to your ’89. 

5-inch Double Density 

Single Sided, 48tpi 162 KBytes 

Double Sided, 48tpi 343 KBytes 

Double Sided, 96tpi 700 KBytes 

8-inch Double Density 

Single Sided 594 KBytes 

Double Sided 1210 KBytes 

If your '89 isn’t ORG-O CP/M compatible yet, our 
modification is available for an additional charge. 

Ask for this controller at your local Heathkit or 
Computer Store, or order direct. 

MAGNOLIA MICROSYSTEMS, INC. 

2812 Thorndyke Avenue West 

Seattle, WA 98199 

1206) 285-7266 C800] 426-2841 


MAGNOLIA 

MICROSYSTEMS 


Because virtually all CP/M™ software is available 
on 8-inch single-density diskettes Calso supported 
by the controller], you can access an almost unlim¬ 
ited base of programs. Magnolia Microsystems’ 
CP/M 2.2 is included at no extra charge, allowing 
full compatibility with our support of other devices. 
The Package Includes 

• The Double Density disk controller card 

• CP/M 2.2 on both 5" and 8" media 

• An upgrade kit for the ’89s power supply 

• New Monitor and I/O Decode PROMs 

• Cables for both 5" and 8" drives 


All for only 

$595 

order no 77316 

See our other advertisements for details on 
complete disk systems using this controller 

CP/M is a trademark of Digital Research 
CIRCLE #105 ON READER SERVICE CARD 


Sextant Spring 1982 7 





Introducing a SPELL, a new spelling 

fivnillloi* proofreader, recognizes over 

Olilimplf 50,000 English words. And it uses a 
Faster dictionary which has been crunched by 
' sophisticated algorithms into less than 31K 

Better d ytes. T dat l eaves more disk space for 

vvvwaj your documents. A nc j b ecause the whole 

SDeiler. dictionar y fits int0 memory, SPELL runs 

* faster than other spelling programs. 

SPELL is engineered for ease of use. With a single 
keystroke, you can mark a questionable word in your 
original document, or add it to the dictionary. And it works 
with files generated by most editors 
and word processors, including 
WordStar and Magic Wand. 

What else about SPELL is smaller 
and better? Its price: only $49.95. 

Add $3 shipping for 8" CP/M disk, 
$2 for 5" Heath/Zenith CP/M or 
HDOS disk. Manual $2 if 
ordered separately. CA 
residents add tax. 

Circle reader service 
card for our catalog of 
over 20 software 
products. 

Developer of SPELL, 

* Dr. Robert Wesson, 

N professional computer 
scientist. 


C 77£e Software c ToolW5rkg 


14478 Glorietta Drive, Sherman Oaks, CA 91423 (213) 986-4885 
CIRCLE #103 ON READER SERVICE CARD 


consequences have followed from the mix of needs, 
technologies, and markets produced by Zenith’s 
purchase of the Heath Company. How has it really 
worked out? Finding the answer to that was why 
we interviewed Mr. Moffet; and why we will, in 
the future, be having other interviews and reports 
on the background, the products, and the future of 
Zenith Data Systems, the Heath Company, and 
other parts of the Zenith Radio Corporation’s 
Computer Business Group. 


The product line 

Heath/Zenith’s computer product line runs to 
fourteen pages in the Heath catalog. Looking at it, 
one fact emerges: Heath/Zenith has, and is devel¬ 
oping, a product line of sufficient breadth and 
depth that the prospective business user should 
have no fears concerning either hardware or soft¬ 
ware support. 

The hardware line currently carried under the 
Zenith Data Systems label goes from the “Entry 
System ”, with the Z89 microcomputer and Z25 or 
other printer, to the “High Capacity System” with 
11 megabytes of storage, consisting of the Z89, the 
Z67 Winchester drive, and either the Z25 line 
printer or a letter quality printer such as the 
Diablo. 

The software offered similarly covers the range 
of needs confronted by the business user. Business 
applications and word processing offerings are 


available, along with a database management sys¬ 
tem. Language/operating systems software and 
utility programs are also presented. 

That spread of hardware and software offer¬ 
ings may seem pretty unspectacular to many who 
have been around the Heath user scene for a while. 
It is sort of taken for granted. (Some would just 
ask, why aren’t there more?) But a lot of people in 
the business community know that they cannot 
take support for granted. Many have been burned 
badly by ill-supported offerings. Many have bought 
systems only to find themselves without software, 
or with equipment they could not upgrade. Or 
both. A large company can hire programmers or 
swallow the cost of new gear. Not so the little guy. 
Read some magazine articles aimed to the small 
business that wants to use microcomputers. A good 
number of them will be horror stories, or articles 
on how to avoid starring in your own horror story. 
To the small business buyer, then, the range of 
Heath/Zenith’s current offerings is a significant 
reassurance. 

The sales effort 

The caliber of Heath/Zenith’s product line, 
however, is no guarantee of success. Historically, 
one criticism of Heath’s computer effort was that 
they were satisfied with the kit market and were 
not pushing themselves to the general market. 
Which was, to some extent, understandable from 
Heath’s point of view: if you want to build your 
computer at home, there just “ain’t nobody else” 
besides Heath. (The exception proves the rule: the 
other personal computer offered in kit-form is the 
Sinclair. At less than $100, it’s not exactly in the 
same league as the H89.) 

Zenith, however, does not have the supremacy 
in its marketplace that Heath has among electron¬ 
ics kit builders. If they are to compete in the 
all-in-one personal computer market, they are going 
to have to market their product aggressively. The 
Zenith name recognition will have no value if no 
one knows there’s a computer with the name 
“Zenith” on it. And questions have been raised 
about Zenith’s success in getting into the new 
specialty computer stores. 

So far, Zenith’s response to these problems has 
included two important factors. The first is a 
marketing agreement whereby ZDS products will 
be carried by the national ComputerLand chain. 
The second has been a sales promotion effort 
aimed at making it easier for dealers to carry 
Zenith computers. The “Show ’n Sell” program is 
designed to cover the dealer’s costs of financing 
display and inventory units for Zenith’s line of 
microcomputer systems. In addition, two sample 
packages of business software are offered for 
demonstration purposes at less then 10 percent of 
their suggested retail price. The program has been 
recently extended. 


8 Sextant Spring 1982 





Going beyond the showroom 

To some extent, Zenith is just like “any other 
microcomputer manufacturer ”. Zenith will have 
the same marketing challenges and the same op¬ 
portunities as anyone else in the market. But to 
some extent, Zenith will occupy an unusual niche. 
This is because of the uniqueness of the Heath 
Company and the impact that has had on the 
people who make up the Heath user community. 
Because the Heath computer has been offered so 
heavily as a kit, the average Heath user is probably 
the most technologically sophisticated user of any 
microcomputer system. That expertise has pro¬ 
duced two important phenomena. One is the Heath 
Users’ Groups, the HUGs. The other is the inde¬ 
pendent Heath/Zenith marketplace. In a business 
where “support” is synonymous with success, these 
may prove to be potentially the most important 
resources Heath/Zenith can draw upon. 

The Heath Users’ Groups 

There are “two” HUGs, both important to the 
Heath/Zenith user. The first is the one that shows 
up in the Heathkit catalog. It’s located in St. 
Joseph, Michigan, at the Heath Company head¬ 
quarters. In the words of BEMark, its magazine, 
“HUG is provided by Heath Company as a service 
to its members for the purpose of fostering the 
exchange of ideas to enhance their usage of Heath 


equipment.” This HUG is a national operation 
which, besides providing a framework for feed¬ 
back, also provides services such as software offer¬ 
ings. 

The local HUG 

But there is another HUG, as well. This one is a 
local HUG which meets somewhere not too far 
from the user’s own home. This HUG operates 
pretty much independently of the Heath Compa¬ 
ny, subject only to such obvious constraints as not 
appropriating the company’s name to their own 
use. 

The local HUGs are as diverse as the towns and 
cities where they meet. They range from as few as 
three or four members to as many as three or four 
hundred members. They are partly social, partly 
educational, partly technical, partly economic in¬ 
stitutions. They provide bull sessions, lectures, 
buying services, swap meets, software libraries, 
computer bulletin boards, and mutual assistance 
on practically anything else. 

The membership 

Their membership is as diverse as the reasons 
for owning a personal computer. The novice users 
stuck with a problem can bring it to the meeting 
and come away at least started on the solution— 
whether that solution entails basic education or a 
sophisticated analysis of the equipment,software 
and functions being handled. To many users, the 


Final assembly of Zenith’s microcomputers is done on a continuous line at the St. Joseph, 
Michigan plant. Power supplies, disk drives and keyboards are added on the far side of the 
production line, with printed circuit boards inserted on the near side. 


Sextant Spring 1982 9 





local HUG is frequently the shortest route to 
unsnarling a work situation or winning a game of 
Galactic Experience. 

The advanced user also finds a forum for the 
interchange of ideas and opportunities. Some of 
these people are in jobs where they use computers. 
Some are hobbyists who regard computers as a 
challenging game. Some of them are hobbyists 
who have acquired the skills and knowledge of 
professionals. Some of them are computer profes¬ 
sionals themselves. The common factor for the 
“Heathkit” computer user may simply be that the 
sheer act of building the computer has brought 
about a better awareness of the problems and 
opportunities of computer ownership and use. It is 
a degree of awareness that does not seem to exist 
in the users of any other brand of computer. 

And for the new and prospective user of 
Heath/Zenith computers, that body of skills and 
understanding may be one of the greatest re¬ 
sources that any computer manufacturer could 
offer. 

The implications 

For the future, the most interesting thing to 
watch may be the impact that increasing numbers 
of Z89 purchasers will have. Their problems are 
not those of hobbyists or professionals experimenting 
with the capabilities of their systems. But the 
solutions to their problems will probably be made 
a lot easier because of the experimentation of the 


hobbyists and the professionals. 

Already, at least some of the folks who bought 
their Z89s only to balance their books are getting 
into equipment modification and software writing. 
According to one theory, some of them were just 
latent hobbyists all along. Another theory would 
point out that for some small businesses, it is just 
cheaper to do it yourself. In any event, some of 
those who bought their Z89s intending just to be 
passive recipients of services have turned out to be 
active participants in computer technology. 

The independent marketplace 

And if some people are moving from “business 
people to technicians”, others are moving from 
“hobbyists” to “business people”. Already, people 
that were “just enthusiasts” have begun offering 
their solutions to problems in the marketplace, 
turning their hobby into businesses. 

The growth of these businesses has made “the 
Heath/Zenith marketplace” a lot bigger than it 
might first seem. That marketplace has a lot more 
products in it than just those with the names 
“Heathkit” or “Zenith” on them. 

There is now a marketplace out there that is 
absolutely essential to the Heath/Zenith market¬ 
place but independent of Heath/Zenith. The 
Heath/Zenith marketplace is not just a company or 
companies that are part of Zenith’s Computer 
Business Group. There is a small industry out 



Zenith microcomputers going through the final test procedure before being boxed for 
shipment. Each assembled microcomputer undergoes a 48-hour burn-in period, during which 
the computer is exercised. Zenith also burns in each of its circuit boards for the computers for 
48 hours prior to assembly. 


10 Sextant Spring 1982 


HOW DO YOU SPELL RELIEF? 





THE ONLY DOUBLE-DENSITY DISK CONTROLLER THAT'S HEATH/ZENITH* COMPATIBLE 


H8*owners can now upgrade for maximum disk storage and 
use standard Heath* operating systems, MH8-37 is equivalent 
to the Z-89”37*upgrade Heath*offers for the H/Z89*and Z90f 
Run the best supported and most highly developed CP/M*and 
HDOS* - keep your H8*current. Use industry standard soft 
sectored disks and recording format. 

IMMEDIATE DOUBLE CAPACITY on H-17*drives - 40% faster 
disk loads! Doubles capacity of 400K Tandon drives - up to 
3 megabytes on line! Handles up to tour 5 in drives. Mix hard 
and sofEsectored disks by keeping H-17*or other controller on 
line. Extended format compatible. Pin out for 8 in drive 
connector provided. 


BUSS SPACE IS FREE replaces 0-O.RG at rear of machine. 
Includes status port with latched output - may be used as 
O-ORG mod and side-select. All board functions are fully 
addressable - keep up with H89*port decoder ROM upgrades. 

Runs with the original 8080 CPU or the new Z80's at 2 and 
4 MHz. Full-feature monitor ROM allows boot from MH8-37 or 
HI 7* Works with any memory board. Requires CP/M*2.2.03 
or HDOS*2.0 (using DKH37.DVD). 

Assembled MH8-37. 1 yr warranty and monitor ROM- $380 
Include $5 shipping (foreign $8). CA residents add 6% tax. 
State CPU board type. 



KEEP IT STANDARD! 


Mako congratulates Sextant on #1! Special bonus to 
readers: Order by 31-Mar-82 and get the MH8-37 for 
ONLY.$330 ! 


mako data products 


144 1-B N. RED GUM. ANAHEIM. CA 92806 


# Reg trademark Heath/Zenith, CP/M is a trademark of Digital Research 


(714) 632-8583 


CIRCLE #107 ON READER SERVICE CARD 


Sextant Spring 1982 11 



















there, providing goods and services designed spe¬ 
cifically for use with Heath/Zenith systems. These 
independent companies produce software designed 
for Heath/Zenith systems. They offer hardware 
modifications designed for those computers. And 
they offer services to the market generally, con¬ 
sulting services, say, using Heath/Zenith systems. 

By way of example, the independent Heath/ 
Zenith marketplace can be compared to the “plug- 
compatible” industry that has grown up around the 
major mainframe computer manufacturers like 
IBM. The plug compatibles enable the IBM user to 
access services and capabilities not available from 
IBM. 

One big difference, of course, is that IBM has 
historically viewed the plug compatibles with un¬ 
remitting hostility. Zenith, however, continuing 
the practice of the Heath Company, has had 
relations with the independents that have at least 
been polite and have usually been cordial. You 
need only check out the offerings in your nearest 
Heathkit Electronic Center to see that Heath/Zenith 
values the presence of the independents—values 
them enough to market their products. 

Again, it may be the importance of the hobbyist 
that is at work here. When the major mainframe 
computer companies see people “doing thin gs” 
with their systems, they see them as adversaries. 
In the Heathkit universe, such people aren’t 
adversaries: they’re customers. 

(Then again, a company like IBM’s perspective 
may be based on the fact that they were there first. 

^ UPGRADE YOUR HDOS CAPABILITY-> 

MMI-PAIIir 

FEATURING ECOSET ™ 

VIEWING CURRENT OPTION SETTINGS IS 
EVEN MORE VALUABLE WHEN RECONFIGURING 

DRIVERS WITH OUR ADDED OPTIONS. 


Arguably, the independent Heath/Zenith computer 
marketplace is older than Heath/Zenith comput¬ 
ers! The first issue of Buss newsletter, the inde¬ 
pendent newsletter of Heath Co. computers, was 
distributed four months before the first Heath 
computers ever made their way out of Benton 
Harbor. It came out three months after Heath 
Company first announced its plans to release some 
sort of personal computer.) 

For whatever reason, the result is that the 
Heath/Zenith user has a remarkable range of 
software and hardware support available. That 
support, like Heath/Zenith volume, is growing. In 
the first Buss Directory of independent Heath/ 
Zenith suppliers, compiled in the summer of 1980, 
there were fewer than 60 entries. The latest, 
released last fall, had more than 150. And with 
that growth has come increasing sophistication. A 
look at just the ads in this issue of sextant will 
suffice to show that. (As an aside, the back cover 
of this issue is the first use of a full color ad 
by a company devoted purely to the Heath/Zenith 
marketplace.) 

The question, of course, is where everything’s 
leading to. 

The future 

Well, presumably everything’s leading to the 
future. And that’s what sextant hopes to bring to 
you. In this premiere issue, we have tried to cover 
the entire Heath/Zenith marketplace in one arti¬ 
cle. So we’ve used a pretty broad brush and swept 
over the details. 

In fact, there’s a lot we’ve left out. Take the 
OEMs, for instance, the “original equipment man¬ 
ufacturers”. These are the folks who take Heath/ 
Zenith computer products and mix them together 
with other hardware and software to do a particu¬ 
lar job for a particular market, medicine, say. The 
lab that does chemical analyses may very well be 
using a Heath/Zenith computer in a total package 
with another label on it. 


(margins, form feeds, pauses, ...) 

LPH14 LPH24 LPH25 LPH34 LPH44 

NEG/CTS NEG/CTS POS/CTS DC1/DC3 ETX/ACK 

$ 20.00 each (U.S. Currency) 


(others available on request) 



Or take the products that Heath/Zenith hasn’t 
released yet. What will they be? Will software 
offerings predominate in 1982, or hardware? And 
what about the competition? Or the people who 
make up the entire Heath/Zenith marketplace? Or 
their effect on the microcomputer industry as a 
whole? 

In this brief overview, we’ve only begun to 
scratch the surface. In future issues, we hope to 
report further on the entire Heath/Zenith market¬ 
place. We hope you’ll be along with us on that, 
both as readers and as participants. If you have any 
comments, or questions, or criticisms, or ideas 
J about that marketplace, or about us, we want to 
hear them. It’s the biography of a community we’re 
writing here, as well as the profile of an industry. 
It’s an important story and we hope we do it 
justice. 


12 Sextant Spring 1982 














Since 1978, we have been dedicated 
to delivering quality products with 
fast service at reasonable prices! To ||||| 
receive a complete detailed listing 
of all software and hardware, send ^ 
for our new free catalog. Our busi¬ 
ness hours are 10am to 6pm (Eastern 
time) Monday thru Friday. COD shipping 
is available for $2 extra, phone orders 
welcome. Add $1.75 shipping, handling 
and insurance charges on orders under 
$100 in the continental U.S. Orders over 
$100 add $5. Foreign orders add 15% for 
shipping. Alaska, Hawaii, APO and FPO 
add 3% shipping on orders over $100. 
Michigan residents add 4% sales tax. 

PHONE: ( 313)645 5365 


Tandon TM-100-4 double-sided 80 track 
5£ " drives can be used with your stand¬ 
ard hard sector controller or may be 
used in a double density format. Also 
available are TM-100-1 drives. They are 
single sided 40 track and are direct re¬ 
placements for the H89 or H77/H17. 

TM-100-4 $425 Quantity pricing 

TM-100-1 $235 available. 


From Micro Peripherals, Inc., the Z99-G 
printer has both tractor feed and fric¬ 
tion feed standard! Single sheets are 
front-loaded for ease of operation. A 
Centronics type parallel and an RS-232 
serial interface is also standard. Using a 
7x9 matrix for normal text with lower 
case descenders, an 11 x 9 matrix and 
serif-style font can also be printed. It 
prints the full 96 character ASCII set on 
up to two copies. High resolution with 
dot addressable graphics is standard for 
plotting, printing screen graphics, spec¬ 
ialty fonts or illustrations. A CP/M mod¬ 
ification is available to allow printing 
both the normal and reverse graphic set 
of the Heath/Zenith computer! 

• Microprocessor controlled 

• Bi-directional printing 

• 100 cps maximum print speed 

• Correspondence printing 

• Adjustable tractors 

• Uses ribbon cartridges' 

• 80, 96, or 136 column lines 

• Assembled & tested 

For more info and a sample print-out, 
write to us! 


90 day guarantee on all drives, 


8" Tandon THINLINE drives are half the 
thickness of older eight inch drives and 
are double-sided and double density. No 
AC current required! 


K37 V 

ENCLOSURE & Y 
POWER SUPPLY Y 

Now you have a choice! A Heath/Zenith 
look-alike dual disk drive enclosure is 
now available. Includes an integral fused 
heavy-duty power supply. Steel cabinet 
and chassis with plastic front bezel. Kit 
form or assembled and tested. 

K37 Enclosure Kit $210 (drives not 
K37 Enclosure A&T $235 included) 


DISKETTES w 

Memorex 5" SS,SD 10 Sector 
Scotch 5” Soft-sector DS,DD 
Memorex 8" DS,DD 
Hub Ring Kit with 25 rings 


STANDARD ENCLOSURES 
Assembled single or dual 5i " disk drive 
enclosures with fused & regulated power 
supplies. All steel construction with a 
metallic gray color. Mounting hardware 

is included. 


These are state 

of the art interface switching units. Any 
RS-232 peripheral may be switched be¬ 
tween 3 other devices using the standard 
8 data lines. r->Tc cq oq 


||Jj| JBSl HI wm Made by 

if® SBWlll Livingston 

H . m i Logic Labs, 

l m these controllers handle up to four 
single or double-sided 8" standard drives 
employing single density recording tech¬ 
niques. They use an IBM 3740 standard 
format, and come with CP/M BIOS mods, 
with an HDOS driver available separ¬ 
ately. Supplied assembled and tested. 


Z90-80 Computer . 

Z90-82 Computer . 

Z-89-FA Computer . 

WH88-16 16K Expansion Card ... 

Z-89-37 Double Density Card. 

Z-37 Dual Disk System . 

Z-19 CRT Terminal .... 

Z-25 High Speed Printer . 

CP/M 2.2 on 5" Disk . 

MBASIC for CP/M . 

MBASIC for HDOS . 

MBASIC CP/M Compiler . 

MFORTRAN for CP/M . 

MFORTRAN for HDOS .. 

Peachtree AR,AP,PR,GL (ea) .... 

Data Star .250 Wordstar .... 

SuperCalc . 245 Magic Wand 

CBASIC .99 Supersort ... 


T ^iucm SOFTWARE 

Money$worth (CP/M or HDOS) 

Quik-Ref (HDOS) . 

Bios-80 (CP/M) . 

Caverns of Doomed (HDOS) , 

Compacta (HDOS) .- 

T.N.T. Driver (HDOS) . 

The Paralleler (HDOS) . 

Key-It! (CP/M) . 

Key-It! (HDOS) .— 

Math Wiz (CP/M or HDOS) ., 

Bxref (CP/M or HDOS) .. 

CTRL-’P’atch (HDOS) . 


H8 controller 
H89 controller 
HDOS Device Driver 


Smartmodem 

• Auto-Answer, 


Tandon 


k . ^ 

Anpi 

i 

99G 


WORD PROCESSING (non-Zenith) 

SpellBinder & Office Manag.289 

SpellGuard . 2 * 5 

Palantir Word Processor. CALL 


Probe (CP/M or HDOS) . 30 

Thing (escape code chart) . 3 

Financial/Graph Plot (HDOS) .18 

Quizmaster (HDOS) .16 


• RS-232, programmable, 
Smartmodem $235 


Chronograph 


$210 


CIRCLE #106 ON READER SERVICE CARD 


Sextant Spring 1982 13 















































































William F. Buckley, Jr. 
on Hugh Kenner 



One should attempt to 
imitate Kenners 
perfectly-tempered 
lucidity... even as a 
young tenor might be 
instructed to imitate 
Caruso. 


In a celebrated essay, Michael Oakeshott remarks the 
closeness of the boundaries of teaching-by-text. As so 
often is the case when a truism is discovered, instantly 
after Oakeshott said it it seemed obvious that to describe 
the motion of pounding down on a nail on a piece of wood 
requires more didactic BTUs than taking the student to the 
woodshed and showing him how it’s done. But the dis¬ 
tinction in between has been brilliantly discovered, and 
I’d give Hugh Kenner the principal credit for this, at least 
in the worlds in which I have travelled. The distinction I 
speak of is: How should something be taught, when the 
alternative of teaching it through personal contact is not 
available? And Hugh Kenner comes especially to mind 
because although he is a literary critic primarily, he never 
writes like one. Somewhere along the line, lucidity gripped 
him, and from its entrance he never succeeded in tearing 
himself loose, not even after a generation spent reading 
the work of some of his colleagues. Although he is as I say, 
a critic by profession, his interest in mechanics is intense, 
and he succeeds in bringing his powers of elucidation to 
the explanation of anything at all, whether the engineering 
concepts of Bucky Fuller, the mysteries of programming 
celestial navigation computers, or—of course—the myster¬ 
ies of word processors. 

I have not experienced these, but after reading this 
article I feel that with it in hand, and a manual, screen, and 
printer beside me, I’d have a better than even chance of 
coming up on the other end after the long swim through 
technicalities. Mr. Kenner does here in 17 pages what, I 
warrant, the nice people who wrote the manuals haven’t 
succeeded in doing in three times as much space. 
Moreover he does this in an elegant idiom that brings 
pleasure not only as one penetrates mystery, but as one 
listens to the incantations that cause the arcana to stop 
being mysterious, and come in under Hugh Kenner’s 
spotlight. One should attempt to imitate Kenner’s per¬ 
fectly-tempered lucidity, and students of language and 
pedagogy should imitate him. But that is as far as we are 
likely to go, even as a young tenor might be instructed to 
imitate Caruso. Replacing him is outside the power, and 
therefore the ambition, of most of those who deal in En¬ 
glish. 


14 Sextant Spring 1982 






A Professional Writer Looks at 

Budget Word Processing 

— Hugh Kenner — 


In 30 years of hammering some fairly tough 
typewriters into Intensive Care—twenty books, 
maybe 700 articles—I have routinely drafted each 
page at the keyboard, reread it semi-pleased, 
defaced it with scribblings, retyped it, reread, 
rescribbled, again retyped ... in all, have generally 
typed everything three times (and proofread each 
retyping.) 

Hour after hour, two-thirds of my keyboard 
time given over to sheer transcription: recopying 
the 250 right words that surrounded any 25 wrong 


In 30 years of hammering some 
fairly tough typewriters into 
Intensive Care—twenty books, 
maybe 700 articles—I have ... 
generally typed everything three 
times.... 


ones: that simple statistic was what turned me at 
long last toward the computer. And for a Heathkit 
veteran—it was 1955 I built my first Heathkit— 
what else but the H89? 

Which has proved an impeccable choice. A 
sturdy full-sized keyboard with upper and lower 
case; a 24-line by 80-character screen; 64K of 
memory; the H77’s two outboard floppy drives; RS- 
232-C compatibility with a Diablo 630 printer and, 
via modem, with my university’s UNIX (this last only 
marginally pertinent to the present discussion): all 
in all, a professional-quality system. Within weeks 
it had helped me produce a 2,500-word article 
against a one-day deadline: many, many hours 
saved because nothing got retyped. That was when 
I knew I had turned a corner. 

It was done, and the words you are reading are 
being arranged, with an assist from the ineffable 
Software Toolworks, whose pie and text for 
Heath’s HDOS make a $65 word-processing pack¬ 


age I’m not interested in trying to beat. You can pay 
$500 for Word Processor software with power 
steering and incidental music, most of the features 
aimed at keeping secretaries insulated from the 
(shhh!) computer. Some of the best of these, like 
Magic Wand, have features what I’m about to 
describe can’t claim. But Magic Wand ($295) 
requires CP/M (another $ 150). pie andTEXT run on 
HDOS. And they do what one professional writer 
wants. 

All I want is to type it in simply and get it out 
cleanly. No Problem, pie (“Programma Improved 
Editor ”) puts it in, easily; text prints it out, hand¬ 
somely. The commands you need in addition to 


A 500-page book is no storage 
problem whatever; at printing 
time TEXT will call file after file, 
if necessary from drive 
after drive. 


bare typing are few and become second nature in 
two days. 

Using pie, you type in not only what you want to 
say, but also the formatting commands for text. 
This idea is not unfamiliar, tab and return on your 
present typewriter are examples of such com¬ 
mands, since they do not put in words but help 
format the page. The same is true of setting margin 
stops or removing a sheet when you’ve typed to a 
certain length, text simply reduces such gestures 
to two-letter formulae placed at the left-hand 
margin and preceded by a dot. 

Thus the new paragraph I just started was 
obtained by typing “.pp” at the left-hand margin. 
text interprets any dot-two-letter sequence at that 
margin as an instruction to be relayed to the 


Sextant Spring 1982 15 








CExrflwr 


Finally, a magazine for you 


Sextant is the magazine for anyone interested in Heath®/Zenith computers because it covers only 
Heath®/Zenith computers. Now you don’t need to search through magazine after magazine to find tid¬ 
bits of information about your system. Sextant publishes the news you need. 

Sexton? features in-depth technical articles, tutorials and human-interest stories. You can read about 
new ways to use Heathkit® computers and Zenith Data Systems. You will see articles from business 
people who need a computer to deal with their paperwork; from professionals who are developing new 
products; and from hobbyists who just have fun with computers. Sextant can give you ideas about what 
you can do with a Heath®/Zenith computer to make it even more valuable. 

From each issue of Sextant you can expect independent editorial quality. Sextant is not affiliated with 
the Heath Company or the Zenith Radio Corporation. All aspects of the system—good or bad—can be 
published. 

Sextant covers Heath®/Zenith computers, often overlooked by other magazines. At last, you too can 
read articles about your system and learn more about its potential. 

Keep Sextant coming to you. Just fill-in and return our subscription action card opposite this page or 
send your payment of $9.97 ($ 11.50 in Canada, $ 14 overseas) for a four-issue (one year) subscription. 
(Payment mustbeinU.S. dollars payable on a U.S. bank, by international postal money order, or 
charged on VISA or MasterCard.) A full refund is guaranteed any time you’re not satisfied. Send your 
order today to: Sextant, 716 E St., SE, Washington, DC 20003 or call 202/544-0900. 


MAGNOLIA H 

MICROSYSTEMS 


CP/M™ DISK SUBSYSTEMS 

FOR THE HEATH/ZENITH 89 COMPUTER 


Corvus Winchester Disk Systems 

Daisy-Chain 4 drives for up to 80 MBytes 
Connect up to 8 '89s using a Constellation 


5 MByte 

$3750 

10 MByte 

$5350 

20 MByte 

$6450 

Constellation Multiplexer 

S900 

Interface cards for additional ’89s 

$350 


5" Double Density Floppy Systems 


Use up to 4 5" and 4 8" drives! 

48tpi: Single Sided: 1 drive (162K) $945 

Double Sided: 1 drive (343K) $1095 

96 tpi: Double Sided: 1 drive (70QK) $1295 

2 drives (1400K) $1995 


8" Double Density Floppy Systems 

Use up to 4 8" and 4 5" drives! 


Single Sided: 1 drive (594K) $1595 

2 drives (1188K] $1995 

Double Sided: 1 drive Cl 21 OK) $2095 

2 drives C2420K) $2695 


Mixed Winchester and Floppy Systems 

Mass Storage with Floppy Backup 
5 MByte + 96 tpi DS 5" (700K) $4495 

5 MByte + DS 8" (121 OK) $4995 

10 MByte + DS 8" (121 OK) $6495 


Each system includes everything needed: 

• Disk I/O Card and/or Double Density Controller Package including CP/M 2.2 

• Disk Drives in cabinet with Power Supply and all necessary cables 


Ask for these systems at your local Heathkit or Computer Store, or order direct. 


MAGNOLIA MICROSYSTEMS, INC. 

2264 -15th Avenue West 

Seattle, WA 98119 

(206) 285-7266 (800) 426-2841 


See our other advertisements for details 
on the interface and double density 
controller boards used in these systems. 
CP/M is a trademark of Digital Research. 


16 Sextant Spring 1982 


CIRCLE #105 ON READER SERVICE CARD 






_ Payment enclosed 

_Bill me 

_Charge my'- -- 

Card # 

Signature- 

Start my subscription with: 


.MasterCard 



Interbank #- 
Expiration Date 
1982 


. Summer 




gfgwxww 

gennsSiaA«l?' ENT 

"*•»». D C 2 4| E 


printer: “.sp”, leave a line-space; “.ul”, underline 
what is on the next line. Many of these can be 
enhanced by an optional number. Thus “.sp 2” 
means leave two line-spaces; and whereas “.ce” 
says “center the next line”, which might be a title, 
“.ce 2” says “center the next 2 lines”, which might 
be a title and a byline. If counting grows tedious 
you can get into the centering mode with an 
arbitrary “.ce 999”, and out of it again with “.ce 0”. 
Then you don’t need to count all the blank lines; 
this is of practical use in laying out things like title 
pages, life being short enough without trying to 
keep a tally of gaps. Another useful command is “.Is 
n”; thus “.Is 2” says “double-space everything until 
otherwise instructed.” Put it at the head of your 
opus and see everything thereafter double-spaced 
the way typesetters like it. And numbers can 
augment numbers; thus after I have used “.in 10” to 
fix the left margin at 10 spaces (1 inch) from the 
edge of the paper,“.in +4 ’’will indent some block of 
quoted matter another 4 spaces, and keep doing so 
line after line until “.in -4” restores the original 
margin. 

pie comes with 13 very clear pages of instruc¬ 
tions, text with a 12-page block of legalese you can 
consult quite comfortably when you’ve learned to 


The commands you need in 
addition to bare typing are few 
and become second nature in two 
days. 


read it, the one thing it doesn’t tell you how to do. 
Take heart. By the time you have finished this 
article the text instructions will be transparent. 

I shall now outline the step-by-step setting up 
of a rational Word Processing system from in¬ 
expensive software components in 20 minutes. I’ll 
assume the minimum hardware, with at least 32K 
of memory and a second disk drive, SY1:. (More 
memory, longer documents without disk changing. 
I got the full 64K available. I also have a third drive, 
SY2:. It’s an amenity.) 

The preliminaries 

1. Obtain pie ($29.95) and text ($34.95) from 
your local Heathkit or Zenith Data Systems retailer 
or from The Software Toolworks, 14478 Glorietta 
Dr., Sherman Oaks, CA 91423, who request an- 



Hugh Kenner in his office at home. 


other $2 per order for shipping. (Zenith has the 
very same programs in Softstuff at scandalously 
higher prices; beware. And though CP/M versions 
of pie and text are available, this article assumes 
HDOS 2.0. Finally, any good program on the 
market is apt to be updated; I used pie i.5b and text 
3.3, with which I’d expect future editions to be 
compatible.) 

2. Initialize a new diskette, label it word 
processor, and install minimal boot facilities with 
SYSGEN/M. 

3. Onto this disk copy either pie.abs (for the 
H89) or PIE8.ABS (for the H8): both are on the pie 
distribution disk. Next copyTEXT.ABS from the text 
distribution disk. 

4. If you’ve just bought your Diablo printer, see 
your HDOS manual, page 2-57, before going 
further. If you’ve had it a while, its driver, lp.dvd, 
will be in residence on a working diskette. Boot this 
and key set LP: page o. This cancels any ideas lp.dvd 
may have about page length, since such ideas could 
conflict with text commands. Now copy lp.dvd 
onto the “Word Processor” diskette. 

5. You are ready to go. Your “Word Processor” 
diskette has about 160 sectors available for record¬ 
ing draft material. Place it in SY0:, boot it, type pie 
draft, and experiment. 

Using PIE’s features 

When you typed pie draft, the word draft was 
a file name, so you saw the message, “File not 
found: will create it.” Everything you type after 
this will be stored under the heading “Draft,” and 
the next time you call “pie draft” the beginning of 
“Draft” is what will appear on the screen. Using 
commands like pie DRAFT2, pie junk, pie sextant, you 
can open as many files on one disk as the disk has 
room for (and delete them at will when they are 
safely printed). You can also extend your archive to 
any number of disks. A 500-page book is no storage 
problem whatever: at printing time text will call 
file after file, if necessary from drive after drive. 

You are now installed in a domain of great 
freedom. Being tailored for the H89, pie has some- 


Sextant Spring 1982 17 


Photo by Sarah E. Juram. 





thing denied to the Word Processor packages, 
however expensive, that are hemmed in by 
humdrum keyboards on lesser computers: a whole 
row of “function” keys it can put to use, and on the 
numeric keypad nine keys already marked with 
insert/delete and cursor-motion symbols. One of 
the things pie does is move that last group of 
specialties out of the “shifted” mode. Touch DC on 
the keypad and a character is instantly deleted; 
touch IL, and a blank line appears above the 
cursor; touch T , and the cursor moves upward 
into it. (Nothing to memorize: just consult the 
markings Heath has already provided.) “Insert 
Character” (IC) brings a highly visible “Insert 
Mode” prompt that stays on the screen till another 
press of IC turns it off. As you insert, the rest of the 
line moves rightward to make room; overflow 
drops down to the next line. The five “function” 
keys, fl,... f5, move your text up and down in the 
window, screenful by screenful or line by line; f3 
will take you back to the beginning, enter f3 down 
to the end. 

We have hardly begun on the wonders of pie. 
Keys easier for you to learn than for me to 
enumerate will jump the cursor all over the screen, 
for instance to the end or start of the current line, 
or top-screen or bottom, or back and forth along 
the line by 8-space leaps, ctrl-d (“Divide”) will 
make a new line out of everything after the cursor: 
handy if mid-line is where you wish you’d started a 
new paragraph, pie will also Search, Replace, 


pvvvvvvvvvv i a 

H89/Z89 ^ 


Parallel Printer Interfaces 

CENTRONICS 730, 737 types with 40-pin card 
edge connector, $54.95 

EPSON MX-80 types with "Centronics” 36-pin con¬ 
nector, $54.95 

’GENERAL PURPOSE with cable but no connector, 
$44.95 


> 

> 

> 


> 

> 

> 

> 

> 

> 

> 

> 

> 


All Interfaces Include a 6 Foot Printer Cable! 

HDOS Printer Device Drivers 

•GX:/MX: for Epson MX-80/Graftrax 
•MX100: for Epson MX-100 
•CT: for Centronics 737-1,739-1 
•GP: (General Purpose) for most any 

Price $14.95 each; $10 if ordered with interface. Drivers 
supplied on 5-1/4"Diskette. Source Code is included. CP/M 
Patch Diskette also available. 

FBE is an Authorized EPSON Dealer. Write for our 
prices on the MX-80 Printer!! 

FBE Research Company, Inc. 

P.O. Box 68234, Seattle, WA 98168 
206-246-9815 (eves.) 

‘ Centronics ” is a TM of Centronics Data Computer Corp. 

“CP/M” is a TM of Digital Research 


< 

< 

< 

< 

< 

< 

< 

4 

< 

4 

< 

< 

< 

< 


A .A: JV A A A 


CIRCLE #108 ON READER SERVICE CARD 


record “macros” ... but see its instructions. This is a 
glancing view. 

Saving, storing, retrieving your text 

When you are happy with what you’ve typed 
and revised, ctrl-e (for “Exit”) will place it on the 
disk and exit to HDOS. Or ctrl-v (for “saVe ”) will 
record what is typed so far and instead of exiting let 
you resume work. It’s a good idea to “saVe” every 
few hundred words. On continuous display at the 
bottom of the screen are the current line number 
and the number of bytes (characters) remaining in 


Keys easier for you to learn than 
for me to enumerate will jump 
the cursor all over the screen.... 


RAM. The line number can be useful because 
enter [In] f3 will take you straight to it. As for the 
byte count, when it goes below 2,000 a beep and a 
reverse-video bulletin tell you to save right now 
because space is getting critical. Advice: don’t let 
yourself drift anywhere near this limit. A file that 
full is too tight for future editing. Best ctrl-e and 
start a new file ( pie DRAFT2 for instance) when you 
still have at least 5,000 bytes remaining. 

I’d better tell you how I manage file storage. 
The Word Processor disk in the main drive (SY0:) 
has enough space for an article the length of this 
one. For really long projects, like the book I’m 
working on, the two auxiliary drives on the H77 
come into routine play. Each of them gets a disk, 
successively numbered. The odd number in SY1: is 
treated as backup to its successor in SY2:. I com¬ 
mence with pie SY2:CHAPi, type a while, and when I 
feel like it execute a dual save. Taking advantage of 
a useful convention of pie, that anything is returned 
without further fuss to the disk from which it was 
called, I perform ctrl-v to save on SY2:, then enter 
SY l: [filename] CTRL-E to place the backup on SY1:. I am 
now back in HDOS and can start a new block with 
pie SY2:CHAP2. And I have two identical records of all 
that typing. (Don t scoff; even you can one day get 
an unaccountable Bad Disk, Bad Sector, Read 
Error. Yes, you want that backup.) 

You’ll have noticed the use of enter just above, 
and its convention is simple: any time something 
that must precede a pie command, for instance a 
disk drive name, entails keys that could type onto 
the screen, you insulate them from the screen by 


18 Sextant Spring 1982 





enter. For if we had typed no more than 
SYl:[filename] CTRL-E, then “SYl:’’ would have been 
merely the last four characters to be added to the 
file, and the save, lacking instructions to the 
contrary, would have been on SYO:. enter was what 
turned “SYl:” from four characters into part of an 
instruction. 

You can also rename your file. You’d do that to 
save both the previous version and a newly edited 
one, in case of second thoughts. Whereas ctrl-e by 
itself would cause your latest reworking of chapi to 
replace its predecessor, enter chapia ctrl-e will 
leave old chapi alone and record new chapia 
alongside it. 

You print all this with TEXT [filename] LP: SO “TEXT 
draft lp will print out all of draft. If you have a 
number of files to concatenate, create with pie a 
little file called print, which can simply read 
,rf DRAFT1 
.rf DRAFT2 
etc. 

Then “text print lp : ’’ will take care of every¬ 
thing. You’ve guessed that “.rf ’ means “read file,” 
and “.rf commands can be inserted right into what 
you’re typing now, to invoke an insert from else¬ 
where. When you come to just the place for those 
four splendid paragraphs you stashed away last 
week as “brainwve ,” then “ rf brainwve” will sum¬ 
mon them at printing time; or ‘.rf SYn BRAiNWVE,” if 
they’re to be called from a different disk. 

The above assumes a continuous stream of 
fanfold paper. You prefer single sheets? Then after 
text insert “-w” (for “wait”) and the printer will 
stop at the bottom of each page while you replace 
the paper and hit return. 

Numbered pages? text looks after them. The 
“header” instruction, “.he will number 

every page commencing with 1. Between the 
carets you can insert what you like; thus 'Sextant 
Article ' # "'Hugh Kenner' “ puts a heading at the top left of 
the page, my name at the top right, and a number in 
the center. If you prefer the form “Page 1” just 
specify “Page#”. If you don’t want the first page 
numbered, as I generally don’t, place the header 
information after something destined to be printed 
on page 1, such as a title; numbering (and heading) 
will then commence with “2” on the second page. 

Fitting PIE to suit your needs 

After playing with these programs for a day you 
will see ways to standardize. On my Word Proces¬ 
sor disk I have a file called setup, which goes, 


i ri 10 

V 

! 

rin 7@ 

\" 

I PAGE FORMATTING 

f? +4 

V 

l 

1 

Is 2 

V 

DOUBLE SPACE ARTICLE 

rij 

\ » 

no NOT .JUSTIFY 

sp 4 

V* 

4 SPACES ATOP PAGE 1 

r<fl> 2 

\" 

CENTER TITLE AND BYLINE 


>4ction Games 
from 


EVRVWIRE 

THE EXCITEMENT NEVER ENDS WITH THESE 
FAST ACTION GRAPHIC ARCADE GAMES 


INVASION 

INVASION puts you in command of Earth’s defenses. 
You control missile launchers to shoot at an invasion 
force that is trying to land on Earth. The invasion drops 
wiggling bombs that explode on impact and they turn 
into radioactive fallout whenever they are hit. The fate of 
Earth is in your hands. (32K) $17.50 


MISSILE CONTROL 

MISSILE CONTROL tests your speed, accuracy and 
wits. You are under attack by a powerful enemy who has 
many long range guided missiles and bombers. You 
have the responsibility to protect six important cities 
from the onslaught of this menace by launching missiles 
which can be set to explode anywhere on the screen. 
(32K) $17.50 


Y-WING FIGHTER 

You have been chosen to fly your Y-WING FIGHTER on a 
crucial mission to destroy an enemy’s home base. The 
base is hidden in the mountains of an unexplored 
planet. As you skim just above the ground, you will 
encounter a variety of unknown, and increasingly more 
powerful, dangers to test your skill to its maximum. 
(48K) $19.50 


GALACTIC WARRIOR 

You are the GALACTIC WARRIOR on a solo mission 
through space. Armed with a short range laser, long 
range missiles, and a protective force field, you must 
penetrate the enemy fleet of star cruisers and hit the 
central reactor of their space station. As you come 
closer to the space station, the most skilled attackers 
are sent to intercept you. (48K) $19.50 


For the Z/H89 and H8/H19 on dual format HDOS-CP/M 
hard sector 5" disks. 

Available at most Heath/Zenith retailers or directly from 

^IfVRYH^RE 

==■ P.O. Box 60802 
_==“ Sunnyvale, Ca. 94088 


Ca. residents add sales tax. 

CP/M is a registered trademark of Digital Research, Inc. 


CIRCLE #109 ON READER SERVICE CARD 


Sextant Spring 1982 19 


















I then invoke this by commencing each article 
with‘‘.rf setup’’; it sets the margins at 10 and 70 and 
creates 6 spaces (about 1 inch) at the foot of the 
page. Having requested double spacing, an extra 4 
spaces atop page 1, and centering of title and 
byline, it reverts to the main text. (The \ ", by the 
way, heads a “comment” sequence which text 
ignores; but don’t put it on a line by itself unless you 
want a blank line.) 

Only “.nj” still needs explaining. Unless other¬ 
wise instructed, text will align the right-hand 
margin by inserting extra spaces between words. It 
does this alternately from the left and from the 
right, to avoid a thinning-out at just one side, but 
you still may not want the effect, in which case “.nj” 
says “don’t justify.” 

I always use “.nj”; justifying is fun at first, but I 
think not finally pleasing except with a propor¬ 
tional-spacing printer and driver; also with some 
means of hyphenating long words, which the 
pie/text package does not provide 

You won’t want to hyphenate manually either, 
when you first enter the copy, because a botch like 
“some-thing” is sure to end up in mid line after 
TEXT has reformatted your copy. What you 
surely will do is use the word-wrap optionof pie, 
which you get by tabbing over a handy distance 
and then ctrl-w. At that point an invisible right 
margin is stipulated, and the last word too long to fit 

Congratulations 

and 

Best Wishes 
to the staff of 
Sextant 

COMMDSOFT 


665 Maybell Avenue 
Palo Alto, California 94306 
(415) 493-2184 

CIRCLE #110 ON READER SERVICE CARD 


within it spills intact to the next line; you need 
never type “return.” ctrl-w is easy to patch (see pie 
instructions) so the system wakes up with the 
wrap-around line length of your choice. I’ve 
patched mine at the 8th tab. 

Heavy editing can leave right margins pretty 
ragged, something text takes care of by its own 


The erroneous version is what is 
in memory, and the computer, 
not you, may as well hunt it down 
for correction. 


word-wrapping. It shoots word after word to the 
printer until the next word would make the line too 
long; then it commands a line-feed. If you want to 
preserve the integrity of the lines you’ve typed— 
quoting poetry, for instance—just command “.nf ’ 
before your no-fill episode and “.fi” after it. 
(Another way is to commence each line a space or 
more from the left margin. That’s faster if your no¬ 
fill needs only a few lines, and poetry is normally 
indented anyway.) 

Other uses 

I machine-type letters as well as articles, and 
have a more complicated system for those, pie 
letter will call up the following: 

• ir. 15 \" ! 

• rm 75 \" ! Paqe Formatting 

.f2 +10 \" 1 

.rf Idraft \" print text of letter 

■sp 2 
.in +30 

Yours sincerely, 

• sp 4 
. nf 

Hugh Kenner 

.he AA VOMIT page number on envelope 
.bp \"EJECT PAGE 

\w V’PAUSE for envelope insertion 

.sp 3 

■rf address \"ADDRESS ENVELOPE 


This types the letter and locates the signature; 
it also addresses the envelope, calling on the file 
called address, which is: 


20 Sextant Spring 1982 











ES DISK DRIVES DISK DRIVES DISK DRIVES DISK DRIVES DISK DRIVES DISK DRIVES DISK DRIVES DISK DRIVES DISK DRIVES DISK DRIVES 


DISK DRIVES DISK DRIVES DISK DRIVES DISK DRIVES DISK DRIVES DISK 


DRIVES DISK DRIVES DISK DRIV 


PRICE BREAKTHROUGH 


Super Sale on DISK DRIVES 


was • now only $199.95 complete!! 

40-track, double/single density 
100% compatible 

for 

Heath/Zenith* 

Model 89 

(with power supply and case) 

ORDER NOW • SUPPLY IS LIMITED 


For ordering information 
617 - 872*9090 


Please charge to my 
Card #_ 


Visa 


MC 

Exp. Date. 


Enclosed is a check for S _ 

(Please allow 2 weeks for personal checks.) 


Telephone No. 


Name . 


Address . 
City_ 


State. 


Zip 


Signature 


FOB Framingham 


Mass, residents add 5% sales tax 


_________J 


SOFTWARE SUPPORT 


ONE STALKER LANE, FRAMINGHAM, MA01701 

(617)872-9090 


TRADEMARK ZENITH CORPORATION 


Aiua xsia s3Aiua xsia s3Aiaa >isia s3Aiaa >isia s3Aiaa xsia saAiaa >isia S3Aiaa »sia S3Aiaa >is 

CIRCLE #111 ON READER SERVICE CARD 


Sextant Spring 1982 21 


ES DISK DRIVES DISK DRIVES DISK DRIVES DISK DRIVES DISK DRIVES DISK DRIVES DISK DRIVES DISK DRIVES DISK DRIVES DISK DRIVES Dl 














UTILITIES 


s 


unflower 
oftware, Inc. 


6304 WEST 76th STREET 
PRAIRIE VILLAGE, KANSAS 66204 

RICK KERBEL, Pres. (913) 648-1333 

WORD PROCESSING § DATA MANAGEMENT I 

r r 

WORDPRO | MAILMATE I 

A text editor/formatter heavy on § Prints Labels, Letters or Lists. Merge f s.A.P. 

features. When used with a | Label data into your letters. A host of | s' t'iiitL>Q irp/u ™iy/ th Q firot o\ 

“DIABLO”, expect proportional word g user definable options. Map driven ! Search And PrinrMSMA^PH Ar? 

spacing, subscripts and exponents, | output lets you determine output | mRSORT 'hM0D2 SMAP ’ PHLAGS ' 


DUALPORT 

Modifies HDOS to permit a “2nd” 
device to duplicate the I/O of your 
console terminal. Eleven functions 
give added control and security. 

hdos $39.95 
MAGIC MENU 

Converts any system to turn-key 
operation. Menu calls BASIC/ABS/ 
or any other program from command 
mode, and all programs automatically 
return to menu. Even executes multi¬ 
ple command strings. Menu headings 
are user defined. 

HDOS $29.95 


etc. Takes 
processing 


the work out of word § formats. 


hdos $59.95 


HDOS or CP/M $39.95 | HDOS or CP/M 
4 DISKSORT 


SPELGUD/SUPERFOG 


P NUUboruH/M p 

| SY0: NAMELIST f ° ISK 

| Single drive Name/Address/Phone $ Sorts 


$19.95 


any disk file (external) 

Flags misspelled words on your I manager. Operates in turn-ke? I variable ORMutlfptFRFrnRn 
documents or correspondence. / | fashion. No experience necessary. | AHiAbLt, UHMUL IPLE RECORD 

Calculates suggested grade level of p "- 4 recor s ' 

comorohonsinn aL 


comprehension. 

HDOS or CP/M 


HDOS/MBASIC $19.95 | 


HDOS $29.95 

OK / r*niuimi coo/ 

^ LUMrILbRo/ ^ « nn . 

TRANSLATORS p APPLICATIONS 

EDUCATIONAL | | 

p S-BASIC p 

STATES ^ Translates a “structured” Basic(B.H. | 

Teaches state recognition from | or Microsoft) program into! 


APPLIED STATISTICS 

Complete statistics package for the 
engineer or student. All statistical 
functions including histogram. 


graphic maps, capitals' nicknames, | executable statements. An excellent | 

flowers, birds, trees and largest cities. p introduction to other Structured^ DUALFORMAT/MBASIC $59.95 

An PYPollont nannronhv/ lAominn oiW % I annimriQo % 


An excellent geography learning aid. 

DUALFORMAT $24.95 

MATH 


p Languages. 

I 

f 
I 


HDOS 


| CONTROL ,, 

Aids the younger student in all four 0 A Data Entry/Base Language $ 
arithmetic functions. Will solve his ! compiler. Supports data input editing p 
school-work or generate arithmetic p and Random data retreival and f 
or word problems for him. Uses large p update. Write business applications 1 
graphic numerals. ^ in a fraction of the time. ^ 

DUALFORMAT $24.95 I HDOS $99.95 1 


r 

$49.951 Executive Appointment 
| Secretary 


purchased at your nearest Heathkit Electronics Center. When ordering di- ^ 
rect, include $1.50 for postage and handling. Kansas residents include sales ! 
tax. Specify operating system when applicable. ! 

Attention Programmers: Sunflower Software is interested in high p 
quality software for the H8/H89. Let us evaluate your original programs for | 
our internationally marketed line. ^ ^ | 

Send For Free Catalog | 

22 Sextant Spring 1982 


Keeps track of appointments, 
meetings and schedules. Full screen 
display for each day. Ideal for 
Doctors, Lawyers, or anyone with a 
busy schedule. 

HDOS or CP/M $39.95 
SY0.-BILLING 

Complete balance forward billing 
system designed for one drive. 
Accomodates 40 Accounts. Trans¬ 
actions are entered quickly and ac¬ 
curately. HDOS/MBASIC $39.95 

CIRCLE #112 ON READER SERVICE CARD 


• sp 

.rif \" Type ADDRESS below 

Mr. Charles Floto, 

BUSS, 

325 Pennsylvania Ave., S.E., 

Washington, DC 2®@03. 

.sp \" Type SALUTATION below 

\w 

Dear Mr. Floto: 

.fi 

•n..i 

. he AA # AA \" NUMBER PAGES after p.l 

.sp 2 


And you will have noticed that LETTER 
mentioned a file called LDRAFT, which is 


. ce VType DATE below 

21 February 1982 
.sp 2 

.rf address 

,pp \"TEXT OF LETTER FOLLOWS: 


This is complicated, but I want automatic 
envelope addressing, and get it by by having the 
address in a separate file, invoked twice. The 
address file also contains the salutation, because if 
you are sending the same letter to several people 
those are two items you’ll be changing at the same 
time. I keep “Dear Mr. Floto” off the envelope with 
the “ w” command in address, which forces a wait 
during which ctrl-C will terminate everything. 
You print the whole thing with text letter lr, 
hitting return when you hear a beep. More than 
one page needs text -w letter lp : to permit inser¬ 
tion of new sheets. 

Candidly: if your day is filled with letters then 
avoid these roundabouts with a more expensive 
word-processor. But with my 3-4 letters a day I’m 
happy. 

Proofing 

When “lp:” is not specified text goes right to 
the screen. For a proofreading preview just use 
text letter, or text article. Your handiwork will 
go on display with its double-spacing, its para¬ 
graphing, its filled-out lines and all; even its under¬ 
lines, represented by reverse video. Use ctrl-s and 
ctrl-q to stop and start the scrolling, and when you 
see blivets pencil notes of them, not as you want 
them to be but as they are. The erroneous version is 
what is in memory, and the computer, not you, may 
as well hunt it down for correction. 

It does this in search mode. Scanning this 
article I spotted “perfrom”; or was it “perfomr”? 
Never mind, “perf ’ was sufficient. Having reenter¬ 
ed pie draft, I keyed enter, then “perf”, then hit 


the “0” on the numeric keypad, which pie uses as a 
search key. This looks for strings that match the 
entered string. “Perf”? Within two seconds the line 
with “perfrom” was at the top of the screen, with 
the cursor on the non-word’s first letter; the 
correction took but a second more. (The search 
function, alas, does not acknowledge terminal 
blanks, so “cat” will halt not only on every kitty but 
also on “catastrophe” and “complicated. ”) 

Notes, asides, and cautions 

A few things you should know: 

—Since the cat command in HDOS shows you 
how many sectors a file occupies,it’s handy to know 
your average number of words per sector. Mine is 
43, and on a file of reasonable length—say 10 
sectors or more—multiplying the sector readout by 
43 gives me a surprisingly accurate word count. 

—After you’ve worked on a file, pie saves the 
revised version before deleting the original, a 
precaution against disk-write failure that necessi¬ 
tates enough space for the two of them. If enough 
space isn’t there, pie asks if you’ll take the risk of 
deleting #1 to make room for #2. The way to agree, 
as the instructions do not tell you, is to type “y”. If 
there’s still no room, then enter SYn: ctrl-r will 
permit dismount/remount for a new disk in SYn:. 
What you do after that (here the instructions are 
vague) is ENTER SYn: [filename] CTRL-E, and the CTRL-E 
places your work on the new disk. 

—The trick for underlining more lines than 
you care to count is like the trick for centering 


The search function, alas, does 
not acknowledge terminal blanks, 
so “cat” will halt not only on 
every kitty but also on 
“catastrophe” and 
“complicated.” 


explained above, but (contrary to text instruc¬ 
tions) not exactly like it. You start with “.ul 999” or 
some such number, and you terminate with “.ul 0”, 
but after the latter one more line will get under¬ 
lined, so place the command accordingly. 

—text has a backspace, “\b”, which is useful 


Sextant Spring 1982 23 





SOFTWARE FOR TH€ H8/H89/Z89 


Quality Products from NEWLINE SOFTWARE 

VIDEO SCRIBE TEXT EDITOR - *** NEW RELEASE . . VERSION 3.5 *** 

Video Scribe is a screen oriented text editor designed especially for the H19/H89 terminal. 
The top twenty-four lines of the screen are used as a window into your text file. “What you 
see is what you get!” Each time you enter any keystroke, its effect is immediately displayed. 
The twenty-fifth line is used as a “COMMAND MENU”. The keypad and function keys con¬ 
trol most commands. Video Scribe is designed to be easy to use, yet includes a full comple¬ 
ment of powerful commands for fast and efficient entering and editing of text or programs. 
Text automatically wraps to the next line when the margin is reached. Built-in HELP facility 
and complete documentation are included. This editor even has an OOPS key to undo your 
mistakes! Control characters and escape sequences can also be inserted into your text for 
control of your printer features. 

Requires — 32K memory min/40K advised $39.95 (1,2) 

VIDEO ARTIST PLUS — *** NEW RELEASE . . VERSION 4.0 *** 

A unique graphics editor designed for creating graphic displays on the HI9 terminal and sav¬ 
ing the pictures to disk. Includes these features and commands: READ, WRITE, INVERSE, 
SCROLL SCREEN, CUT, PASTE, FILL, ERASE, GRAPHICS/REVERSE MODES, CURSOR 
ON/OFF, GRAPHICS GENERATOR, 8 DIRECTION CURSOR CONTROL, TWO SCREEN PICTURE 
BUFFER. INSERT LINE, DELETE LINE, DUPLICATE (in 4 directions), INSERT CHARACTER. 
HELP DISPLAY. Completely “MENU" driven. Uses the function keys and keypad for com¬ 
mand entry. Complete documentation is included. Sample programs in both MBASIC and 
BHBASIC show how to add the pictures to your applications. 

Requires — 32K memory $39.95 (1,2) 


H25/Z25 GRAPHICS GENERATOR — *** NEW PROGRAM *** 

This program contains all of the features of Video Artist Plus for the creation of pictures on 
the H19 terminal and saving to disk. In addition, graphic displays can be sent from the 
screen of the HI9 to the H25/Z25 printer! Screens can be combined to print 160 column 
wide by any length pictures. In addition to Video Artist Plus commands, the command set in¬ 
cludes: 6/8 LINES PER INCH, 10/13.2 CHARACTERS PER INCH, TOP OF FORM, TWO 
SCREEN PRINT BUFFERS. A program in BASIC is included for printing continuous pictures 
from disk to the H25. Use this program to design your own INVOICES, STATEMENTS LET¬ 
TERHEADS, or just for fun GRAPHICS! 

Requires — 32K memory $44.95 (1, 2) 


TOUCH TYPIST - *** HDOS AND CP/M VERSIONS *** 

Touch Typist was written for the Health/Zenith computer users who use the old hunt-and- 
peck method of typing. And, for those who already know how to touch-type, Touch Typist 
has practice lessons to help improve your speed and accuracy. Touch Typist consists of a 
series of lessons which you can practice at your own pace. The program combines time 
tested techniques of teaching typing with the instant feedback only possible with a personal 
computer. See the Software Review in the January 1982 issue of Kilobaud/MICROCOM- 
PUTING magazine for a complete review of this computer-aided instruction program. 
Requires - 24K memory (HDOS VERSION) $29.95 (1,2) 

(CP/M VERSION) $29.95 (2, 4) 


TOUR-700 - *** NEW PROGRAM *** 

Are you tired of the fast action games that seem impossible to win without at least 8 hands? 
This is the game for you. Based on an old card game played in Europe, this game will enter¬ 
tain and amuse you without tiring you out. A good mix of skill and luck-of-the-cards, this 
program will be enjoyed by youngsters and oldsters alike. The graphics features of the HI9 
are used to present a game board display. The object of the game is to win a cross country 
race against the computer. You must overcome flat tires, accidents, speed limits, and other 
hazards as you make your way through each 700 mile leg of the race. The computer will plot 
to place hazards in your way and try to beat you to the finish line. But with a little luck and 
some plotting of your own, you can win. The HDOS version includes both BHBASIC and 
MBASIC source code. The CP/M version is for MBASIC only. 

Requires — 32K memory (HDOS VERSION) $19.95 (1,2) 

(CP/M VERSION) $19.95 (2, 3) 


Requirement Notes: 

(1) HDOS 1.6 or higher 

(2) H19/H89 terminal 

(3) CP/M 2.x and MBASIC 5.1 

(4) CP/M 2.x 

CP/M is a registered trade mark of Digital Research, Inc. 

MBASIC is a trade mark of Microsoft 
HDOS and BHBASIC are trade marks of Heath Company 


$$$ ATTENTION PROGRAM AUTHORS $$$ 

NEWLINE SOFTWARE is searching for original, high quality programs for the H8 and H89 
computers. We are interested in GAMES, GRAPHICS, BUSINESS SOFTWARE, UTILITIES, 
LANGUAGES, COLOR GRAPHICS or any other software for the businessman or hobby com- 
puterist. Programs must be written for ease of use and be fully documented (source code not 
required). You can earn high royalties for your programs without interfering with your hob¬ 
by. We will evaluate your programs in strictest confidence. Materials will be returned only if 
return postage is provided. 


NEWLINE SOFTWARE 
P.O. BOX 402 


LITTLETON, MASS. 01460 


J 


CIRCLE #113 ON READER SERVICE CARD 


for getting an accent above a letter; thus 
“ere\ b'me” will get you “creme”. Alas, this collides 
with the underlining mechanism, and I have found 
no way to get what one wants surprisingly often, an 
underlined word wearing accents. 

—(Word from the Toolworks is thatTEXT4.o will 
correct the two problems above and add many new 
features including hyphenation capability. Expect 
it this spring at a slightly higher price than the 
current version.) 

—After any line on the screen, text inserts a 
space. So a line isolated for underlining will carry a 
space before any sequent punctuation, “ thus ” 
instead of “ thus ” with an amateurish look. The 
backspace (see above) will take care of this, but 
beware of situations where the underlined word 
ends flush with the right margin; text will then 
backspace after the linefeed, and the mark of 
punctuation will end up out in the left-hand 
margin. If you spot this in proofreading, force the 
word onto a new line by means of an extra space 
somewhere ahead of it. 

This last bug, I expect, will be taken care of in a 
future issue of the software. No need to wait. After 
four months with the H89, Diablo 630, pie, text, I 
luxuriate in the bliss of retyping nothing and envy 
no man, not even Jimmy Carter, whose Brand 
X,didn 11 read recently,crashed one morning and 
lost him—what was it?—18 minutes’ worth of 
memoirs? 


Software for Heath/Zenith" 


Unit 

Snnusrsinn 

Tlasiar 



AUTOMATICALLY CONVERTS INPUT TO ALL OTHER UNITS 
OF MEASUREMENT WITHIN EACH CATEGORY! 

20 Categories - 550 Units 
18,000 Possible Conversions 
English, Metric & Archaic Units 
SI, CGS & MKS Systems 
Scientific & Engineering Units 


Requires 64K, H8/H19*or H/Z89*and CP/M*2.2 

All orders Ppd USA (foreign add $2). CA residents add 6% tax. 


$1995 


mako data products 

1441-B N. RED GUM, ANAHEIM, CA 92806 (714) 632-8583 

Trademark of Heath/Zenith, CP/M is a trademark of Digital Research 

CIRCLE #107 ON READER SERVICE CARD 


24 Sextant Spring 1982 














How to Turn Zenith 
Screen Graphics into Color Slides 

-F. X. “Skip” Millor— 


You can holster your soldering iron 
and let it cool; the following technique 
involves the marriage of photography 
and the screen of your existing H89 or 
H19. 

While in the process of deciding to 
get my H89,1 asked the friendly man at 
my local Heath store about color graphics 
with the H89. The response was a strange 
look and a diplomatic explanation of the 
complexities of modification needed to 
accomplish what I was inquiring about. 
What was really on my mind was to fill a 
need for creating color graphics and 
titles for use in making 35 mm slides that 
could be used as speaker support. It 
seemed that there had to be a way to 
make quick and slick color slides for last 
minute financial meetings, production 
and sales reviews, and, of course, train¬ 
ing sessions dealing with complex 
concepts. 

Well, there is, and after you have the 
desired graphics on your computer’s 
display, it just requires some basic 
photography and some relatively in¬ 
expensive supplies to produce your 
color slides. 

To begin, you need a reliable, easy to 
use graphics program such as Gail 
Halverson’s full screen graphics editor, 
Ed-A-Sketch, from The Software Tool¬ 
works. Next, obtain a copy of a template 
such as Eastman Kodak’s Television 
Graphics Production Template H-42. 
While you are creating your artwork, the 
template provides a consistent center- 
screen reference on your computer’s 
cathode ray tube (CRT). 

The first step is to use some masking 
tape to hold the template to the top of 
the terminal (not the CRT screen). You 
may want to trim the sides of the tem¬ 
plate. Avoid trimming the top or bottom 
of the template. To locate the center of 
your CRT, load Ed-A-Sketch, or other 
graphics program, then move the cursor 
to line 12 and create a horizontal line 
across the screen. Next, count 40 
columns from the left and create a 
vertical line that goes from the top of the 
screen to the bottom. You now have a 
target that shows the center of the 
screen. With this graphic on the screen, 
position the Kodak Graphics Template 
so that its center crossed line matches 
with the target on the CRT. Save this 
“picture’’ in its own file under a title 


such as target.pic. This will eliminate 
your having to create the cross bar 
pattern each time you start designing 
graphics for slide production. I also find 
it best to keep each graphic in its own 
separate file. Now you can begin creat¬ 
ing your graphics using the target on the 
template as a centering reference. 

Designing the graphics—keep 
it simple 

Here are some hints. The first thing to 
keep in mind is that if the people in the 
back of the room cannot read or under¬ 
stand the visual you created, there is no 
sense in going through the process. 
Keep graphics and word slides simple. 
Remember, you are creating a visual to 
simplify and explain. Jamming the 
screen full of data and graphics is going 
to be visually confusing, very difficult to 
photograph, and probably illegible to 
your audience. Professional commun¬ 
icators use slides to show trends and 
comparisons. The mass of data used to 
arrive at their conclusions is left on the 
desk, not put on the screen. If you have a 
lot of information, break it into bite 
(sorry about that pun) sized pieces that 
can be disclosed with a series of slides. 

It is best to sketch each slide on paper 
first to be sure you have truly sum¬ 
marized the relevant information. 
Design your graphics to use only the 
center portion of your screen. Avoid 
areas one inch from the top, bottom, and 
sides of the screen because the images 
in these areas may not be as sharp as 
images in the center of the screen. In 
addition, straight lines may turn out as 
curved lines after they are photograph¬ 
ed if you allow the lines to extend to the 
edge of the screen. Stay within the T.V. 
Safe Area that is designated on the 
template. 

After creating all your graphics, get a 
printout of the file listings. This will 
make it easier to keep track of what has 
to be photographed. Besides giving a list 
of the titles of your files, you may wish to 
use the printout later as a scratch pad to 
keep notes regarding exposure settings 
for each graphic. 

Setting up—step by step 

Leave the template in place while 
you set up your single-lens reflex 35 mm 
camera on a tripod. (The relatively long 


exposure times necessary will not give a 
sharp image if you try to hand-hold the 
camera. The hand is not as steady as the 
tripod.) Select a long focal length lens 
such as a 70 mm or 80 mm lens. These 
will reduce the apparent distortion from 
the curved CRT. A 50 mm lens will work 
if only the center portion of the screen is 
photographed. Don’t even bother with 
your 35 mm or 28 mm wide angle lenses. 
They will give much unwanted distor¬ 
tion. Position the back of the camera so it 
is perpendicular to the screen and the 
lens is aimed squarely at the center of 
the screen. Remember, the screen is not 
square with the table. It is tilted back. 
You’re trying to get the film plane of the 
camera parallel with the screen. This is 
important as it will reduce the distortion 
that is a result of the screen curvature. 
(There are hoods and other camera 
holders available for this. You might 
want to investigate them, but they tend 
to be expensive.) 

With camera and lens centered, flip 
the template up (avoid covering the 
terminal exhaust vents.) Check to see if 
the screen is clean of fingerprints. 
Fingerprints that are hard to see with 
the eye are easy to see on the projected 
slide. 

I found that both Kodak Ektachrome 
200 and 400 daylight films work very 
well. Black and white films do not have a 
dark enough maximum density, or black 
background, when projected on a 
screen. The exception is Kodak Kodalith 
film. However, Kodalith film is not sensi¬ 
tive enough for this application. Also, for 
the most part,black and white films 
require you to use reverse video to get a 
final positive image and that leads to 
some unique exposure calculations I 
found to be more complicated than 
practical. Ektachrome film, after proc¬ 
essing, produces a positive likeness of 
what you have on your CRT. 

If you do wish to experiment with 
black and white films, the filter men¬ 
tioned in the next paragraph is not 
needed. Using filters with black and 
white films will unnecessarily extend 
your exposure times. 

Also,if you have a black and white 
CRT, you won’t have to worry about 
filters. Those of you with a green CRT, 
though, will need to stop at your local 
photography store and get a Kodak 


Sextant Spring 1982 25 




Wratten Compensating Filter CC50M, 
75 mm square, catalog number 149 
6694. This gelatin filter will cost under 
$9. There are glass filters available, but 
they cost quite a bit more. 

Placed over your camera lens with a 
small piece of tape, this filter will 
remove most of the green from the CRT 
and provide a black background with 
almost white letters. In order for the 
addition of color to be successful, you 
must have near-white letters on a black 
background. 

By the way, while you’re in the 


ENGINEERING SOFTWARE 
CIRCUIT: A linear circuit analysis program. 
Handles R, L, C, active devices, and transmis¬ 
sion lines. Plots or prints phase and amplitude 
response. Supports disk files with full editing 
capability. Menu driven and compiled. 

PULSE: A transient response program. Calcu¬ 
lates the response of transfer functions, “F(s)’\ 
to step, ramp, pulse, impulse, or user defined 
waveforms. Print or plot output. Menu driven and 
compiled. 

CIRCUIT or PULSE — $79.95 ppd each. Both 
for $99.95 

STAMPS: A data base program set-up specifi¬ 
cally for the stamp collector. Full editing capabil¬ 
ity , also adds up the total value of your collection. 
Menu driven and compiled. $26.95 ppd 
Formats: 8" SD CP/M, 5" Heath CP/M, and also 
for Hewlett-Packard 5" CP/M used by 
the HP-125. 

BEGGS ENGINEERING 
12400 View Court NE. 
Albuquerque, NM 87112 


photography store, pick up a box of glass 
35 mm slide mounts. You will need them 
later. Get a good quality mount. 

Exposure settings—trial and error 

Next we want to determine exposure. 
Unfortunately, both hand-held and in¬ 
camera exposure meters will not work 
very well in determining the proper 
exposure to be used in photographing 
images from the CRT screen. This is 
because most meters generally average 
all the light coming from a typical scene. 
The information on the CRT is not a 
typical scene and most light meters 
won’t know this. However, as an approx¬ 
imate starting point, increase the 
brightness control on your CRT until 
you just begin to lose letter sharpness. 

Turn the lights out in the room you are 
using to photograph the CRT. Light 
other than from the CRT will give a gray 
background and turn the white letters to 
an unwanted color depending on the 
color of the light source. Try to fill the 
camera viewfinder as much as possible. 
This will make your graphics and word 
slides more legible when projected on a 
screen. It will also make it easier to add 
color. I suggest using a cable release to 
depress the camera shutter release. This 
will help eliminate blurring on the 
finished slide that results from slight 
camera movement. 

Using Kodak Ektachrome 400 film in 
the camera, set your shutter speed at Vs 


*** AT LAST! *** H89 COLOR GRAPHICS *** 
Announcing: 

6 ‘The Entertainer’ ’ 


A Color Graphics/Sound Board For H89/Z89 Computers (available April 1st) 


*No Hardware modifications Required 
*TMS9918A Video Display Chip 
* AY-3-8910 Programmable Sound Gen. 

*Easy programming in BASIC or ASM 

Use for business, games, teaching aids. Display 
Bar Graphs, Pie Charts, Maps, Game Playing 
Fields, etc. The TMS 9918A chip contains 32 
planes of user-defined “Sprites’ ’—patterns that 
you can move around the screen, to pass in front 
of or behind each other. Four modes of operation: 
Graphics I, Graphics II, Multicolor, and Text. 
Program music, sounds, noises with the Sound 
Generator Chip. 


*256 x 192 Pixel Resolution 

* 16 Colors Available 

* 16K of RAM included 
*Extra I/O Ports Available 

User programmable to decode ports 00-07 or OS- 
15. High quality circuit boards with silkscreening 
make construction easy. Comes complete with 
assembly manual, video display programming 
manual, programmable sound generator book, 
and demonstration software on 5 l A" disk. Con¬ 
nect to video monitor or antenna terminals of col¬ 
or TV. 


NOTE: Requires an RF Modulator to connect to a color TV. Sources and recommendations for mod¬ 
ulators are included with “The Entertainer’’ package. 

Kit.$310.00 Assembled and Tested.$385.00 

Price includes postage and handling. New Mexico residents add 4% tax. 

SANDIA COMPUTER PRODUCTS COMPANY 

7105 Merle N.E., Albuquerque, NM 87109 


Also supplying FILECAT—the disk cataloging utility that creates a file catalog of both HDOS and 
CP/M disks, with numerical and alphabetical listings of disks and files. Write for information and sam¬ 


ple printouts. 


CIRCLE #114 ON READER SERVICE CARD 


second and adjust your lens aperture or 
f-stop tof/3.5. (A shutter speed faster 
than 1/15 of a second such as 1/60 
of a second exposure time will give you a 
nice but unwanted shutter bar from the 
CRT on the finished slide.) Make three 
exposures, one f/3.5, one f/5.6, and one 
f/2.8. For this first test, you may also 
want to try f/8 and f/1.2. Keep good 
notes on the first roll of film. It will save 
much wasted time, film, and processing 


Keep graphics and 
word slides simple. 
Remember , you are 
creating a visual to 
simplify and explain. 


expense in future projects. You may 
wish to type your exposure and f stop 
information on the screen for each 
graphic or word slide before making 
each exposure. This need only be done 
for the first roll. An alternative would be 
to use the file listing printout as a scratch 
pad to hold notes on the sequence of f 
stops used in photographing each 
graphic. 

By the way, playing with the bright¬ 
ness and camera focus will create some 
interesting neon effects. In addition, 
intentional camera movement after 
initial exposure will also create some 
basic animation and interesting title and 
word slides. I don’t suggest you try this 
for straight graphics such as charts and 
graphs. Master the basics first and tinker 
later. 

After I’m done, I always have Kodak 
process my slide film because their 
quality is very good and consistent. In 
choosing your processor, quality and 
consistency are critical to the finished 
product. I also specify that the film is to 
be unmounted because that makes it 
easier to evaluate my exposure and 
camera technique after the film comes 
back. If you require same-day Ekta¬ 
chrome processing, look in the Yellow 
Pages of your phone book under Photo 
Finishing-Retail. Custom photo finish¬ 
ing labs sometimes offer this service for 
an additional fee. Don’t forget to inquire 
about the lab’s processing schedule, i.e. 
what is the latest you can drop off your 
film and the earliest you can pick it up. 

Adding the color—carefully 

Now comes the addition of color. You 
have two choices. One is colored gels. 
The other is food colors. I’ve used both. 
You’ll probably want to experiment, too. 


26 Sextant Spring 1982 


CIRCLE #115 ON READER SERVICE CARD • 










Letterhead? Multicopy cut forms? Plain bond 
paper? Ditto masters? Try the Easy Feed 
single sheet paper load option with 
feBp MPI's 88G and 99G printers. Just 
pr I feed the paper in the front and watch 
J it come out the top. No round plat- 
V ens to bend around or complicated 
Wr paper paths to worry about. All this in 

^ y addition to the standard adjustable width 
yr tractor drive, dot graphics, 1,000 character 
JT buffer, dual parallel/serial interface, dual fonts 
* and much more. Another good reason to select 
an MPI printer. 


Ampi 


Micro Peripherals, Inc. 

4426 South Century Drive, Salt Lake City, Utah 84107 
Telephone (801) 263-3081 

The Printer People 


Arisen* PLS Associates 1602) 246-6477 • California VITEK (714) 744-8305 • Computer Potentials 1408) 738-1740 • Colorado PLS Associates (303) 
773-1218 • Florida Computer Village (305) 266-5965 • Georgia Micro Graphics (404) 790-5771 • Illinois CW Electronic Enterprises (312) 298-4830 • 
Massachusetts Butler Associates (617) 965-1080 • Consumer Computer Marketing (617) 443-5128 • Minnesota Bohlig & Associates (612) 922-701 1 • 
New Jersey Hansen & Hughes (201) 652-7055 • Ohio EQS (216) 729-2222 • Oregon Micro\|vare (503) 620-8150 • Pennsylvania QED Electronics 
(215) 674-9600 • Texas Computer Wares (214) 373-4443 • Thorson Distributors (2 14)233-5 744 • Utah PLS Associates (801) 466-8729 • Washington 
Microware (206) 451-8586 • International: lurope Russet Instruments, Ltd. (0734) 868147 iTelex 84972! • Australia Datatel Pty Ltd 690-4000 
Telex AA30906 • Canada Norango (416) 498-5332 Telex 06966710 • Mexico, Central and South America Siscom-trol (905) 689-02-09 






















You can obtain some theatrical gela¬ 
tin filters from a theater supply or a 
motion picture equipment supply store. 


You will find that 
once you have 
mastered the basics 
you will be limited 
only by your own 
creativity. 


Since the main use of gels is as the sheets 
that slip over a spotlight to provide the 
desired color of light, their availability 
may depend on the level of professional 
entertainment in your area, but you can 
also write directly to the manufacturer. 
Rosco Laboratories’ Roscotran trans¬ 
parency film packets, for instance, give a 
good selection of colored gels. 

Adding color to your slides with gels 
is easy. Carefully cut the slide from the 
processed roll, sandwich with the 
selected colored gel, and place both in 
the same glass slide mount. The glass 
mount will keep both gel and film flat. 


HEATH/ZENITH 

Sales, Service, Support, Training 

Full line of: 

Peripherals 

Accessories 

Supplies 

AUDIONICS 

SYSTEMS 

CORPORATION 

4510 Allendale Road 
Wichita Falls, TX 76310 
817/692-2706 

Your “Full Service” Distributor 

Retailers: Have a Computer 
Department Now! Dealer Inquiries 
Invited in Texas and Oklahoma. 
CIRCLE #117 ON READER SERVICE CARD 


Experiment with different colors. Be 
sure to use a slide projector to evaluate 
your colored graphic. Holding the slide 
up to a light is not representative of what 
the projected image will look like on a 
screen. 

The second choice is to stop by your 
local supermarket and get some food 
colors. Get the ones that come in the 1.5 
ounce kit. You will get individual bottles 
of red, green, blue, and yellow food 
colors. If you go with this option, you will 
also need a fine tip, high quality camel or 
sable hair brush from an art supply store. 
Don’t try to substitute an inexpensive 
brush because it will likely result in 
damaging your photographic efforts. 
Select a slide that you can experiment 
with because the addition of color with 
dyes takes practice. 

Look closely at the film. Although 
both sides of the film appear shiny, one 
is a bit duller than the other. This dull 
side is the emulsion side and that is 
where you will want to apply the color 
dyes. 

Moisten the brush with water and 
then blot it dry. Now dip the tip of the 


Comments: 

We should note that we have checked 
prices for the Washington, D.C., area 
only. They may be different elsewhere. 

The major expense in a project such 
as this, of course, will be the 35 mm 
camera, if you don’t already have one. 
New% they can be quite expensive, used 
they can sometimes be had for as little 
as $50. 

In Washington, 35 mm glass slide 
mounts run for about $5.95 for a pack of 
20. Kodak 200 and 400 daylight film 
goes for around $5.95 for a 36-exposure 
roll, $4.15 for 20-exposures. Suppliers of 
gels can probably be found in the Yellow 


brush in the full strength dye of the color 
you wish to add to the film. Be sure to 
blot the brush. This will avoid having a 
pool of dye run where you don’t want it. 
Here’s where a good quality brush pays 
off. A poor brush can hold dye and dump 
it where you least want it. A cheap brush 
can also scatch the emulsion. 

With a few minutes’ practice, you will 
be able to add color to the fine lines on 
your graphs, charts, and word slides. 
Using a good fine tip camel hair brush 
will allow you to color the smallest 
elements of your graphic. 

Be sure to let the dye dry thoroughly 
before you place the film in the glass 
mount. Project the slide to evaluate the 
hue and saturation of the colors. If 
you’re using a Kodak slide projector, the 
Kodak Ektagraphic FF lenses seem to 
give the best results with glass mounted 
slides made from computer-generated 
graphics. 

So you’ve got your slides. Make notes 
of your setup and don’t be afraid to 
experiment. You will find that once you 
have mastered the basics, you will be 
limited only by your own creativity. 


Pages under Theatrical Equipment and 
Supplies; look for lighting systems com¬ 
panies. The cost of a decent camel or 
sable hair artist’s brush will probably be 
at least $2.50 for a small brush, with the 
price varying according to size as well as 
quality. And as for food colors , well, the 
editors decided to leave that to your own 
investigation since it involves so per¬ 
sonal a matter as choice of supermarket. 

NOTE: Ed-A-Sketch, Kodak, Eastman, 
Ektachrome, Kodalith, Wratten, Rosco¬ 
tran, and Ektagraphics FF are all trade¬ 
marks. 


Materials Information 

Materials available through mail order: 

Computer Ed-A-Sketch; author, Gail Halverson $29.95 

Graphics Software Toolworks $ 2.00 shipping 

14478 Glorietta Drive 
Sherman Oaks, CA 91423 

Graphics Television Graphics Production Template H-42 $ 2.20 

Template Eastman Kodak, Dept. 412L 

343 State Street 
Rochester, NY 14650 


Materials more 

normally purchased at retail: 

Camera 

Kodak Wratten Compensating Filter CC50M $ 4.83 

Filter 

(75 mm square) 

Colored 

Roscotran transparency film $ 4.25 

Gels 

(20" x 24") 


Rosco Laboratories 


214 Harrison Avenue 


Harrison, NY 10528 


28 Sextant Spring 1982 














Dr. Dobb s Journal 

For Users of Small Computer Systems V 


with topics like: 

Small-C 

FORTH 

Lisp 

CP/M 

S-100 

Cross-assemblers 
8086/8088 
16-bit tech. 
Pascal 
Assembler 
Compilers 
Algorithms 
8080/Z80 
6502 
etc. 


Each issue includes: 

• valuable software tools 

• algorithms & problem solving 

• industry news 

• important product reviews 

With in depth coverage of: 

• telecommunications 

• systems programming 

• language development 

• machine independent programs 

and much, much more! 


Yes! Please enter my subscription for 

□ 1 yr. (12 issues) $25 □ 2 yrs. $47 (save $13 off newsstand) 

□ Please bill me □ I enclose check/money order 

Name---—- 

Address -—- 

City_State_Zip- 



Are you ready? 

DDJ, the world’s foremost micro¬ 
computer publication, has been work¬ 
ing for years to prepare its readers to 
be innovators, to lead the wave of 
breakthroughs in our changing tech¬ 
nology. 

Every issue of Dr. Dobb’s Journal 
helps one to understand the nuts and 
bolts of small computer systems. We 
offer entire listings of valuable soft¬ 
ware: our pages have included com¬ 
pilers, cross-assemblers, editors, new 
languages, hardware interfaces and 
more — usually before anyone else 
thinks of them! 

Even more 
important! 

As valuable and significant as all 
those things are, there is an even great¬ 
er reason for you to join forces with 
DDJ. That is the keen, responsive 
readership. Our subscribers share in¬ 
sights, correspond, and contribute to 
one another’s work, more than any 
other group we know. They treat 
Dr. Dobb’s Journal as a “hands-on” 
publication. 

This warm cooperation has done 
more to refine software products, and 
generally to advance the state of 
microcomputer technology, than per¬ 
haps any other resource. And it is 
available to you through our pages! 

For the straight 
Facts. . . 

If you are a serious computing 
professional or enthusiast, then you 
should take a very close look at what 
DDJ offers you. We’ve been on the 
cutting edge since 1976. 


Sextant Spring 1982 29 






























Benton Harbor BASIC 
Tests Typing Reaction Time 

— Raymond Dotson — 


Here’s a program, TYPING.BAS, that is in¬ 
tended to be both a game and a skills test. You can 
use it to improve your reaction time and typing 
skills. And you can also use it for amusement as 
you challenge yourself to surpass previously attained 
scores. It may also be played by two or more 
persons so that individual improvement percent¬ 
ages are used as the determinant of victory. 

How it’s done 

A random letter of the alphabet is printed on 
the screen and the typist is given a limited time to 
hit the same letter key on the keyboard. A correct 
response in the alloted time will cause the availa¬ 
ble time to be shortened by a small amount. 
Likewise, an improper response will cause the 
time to be extended by a like amount. Therefore, 
the program automatically adjusts to your speed 
and skill, constantly giving you a gentle push to 


r~ 

FOR 8” 

& 5.25” 

DRIVES 


Now be able to run standard 8” Shugart compatible drives 
and 5.25” drives (including the H37 type) in double and 
single density, automatically with one controller. 

Your hard sectored 5.25” disks can be reformatted and 
used as soft sectored double density disks. The FDC-880H 
operates with orwithout the Heath hard sectored controller. 

NEW PRICE $495 
includes controller board CP/M boot 
prom, I/O decoder prom, hardware/soft¬ 
ware manuals BIOS source listing. 

5-20 day delivery- pay by check, C.O.D., Visa, or M/C. 

Contact: 

C.D. R. Systems Inc. 

7667 Vickers St. Suite C 
San Diego, CA 92111 

Tel. (714) 275-1272 


improve. 

A single SPACE instead of a letter key will, at 
any time, display your response time and end the 
program. 

Since it is written in Heath’s Benton Harbor 
BASIC, this program is readily adaptable to other 
BASICs. The only unusual feature is that of line 
360 which uses the PIN command to obtain a 
single keystroke, somewhat like the INKEY$ of 
the Other Guy’s BASIC. 

What’s in the program 

Let’s go through the program line by line and 
explain the purpose of each: 

100 through 180 The commercial. 

190 Defines C$ as the ‘Clear Screen’ command 
and prints it; then defines B=100 which permits a 
maximum of 100 attempts. Cl$ is then made 
equal to C$ plus CHAR$(12) not only to clear the 
screen, but also space 12 vertical lines down. 

320 Requests a delay time be entered as N2$ then 
makes N1 equal the value of N2$. Since ‘PAUSE’ 
delays by 2*n milliseconds, N is made equal to 
N1*500 so that the input time in seconds can be 
used in the PAUSE statement in line 360. 

330 Starts the sequence of 100 trials and prints 8 
blank lines at the top of the screen. 

340 Determines a random number from 65 thru 
90 and then converts that number to a letter of the 
alphabet, A thru Z, (A$). 

350 Prints the random letter in the center of the 
ninth line. 

360 PAUSEs N/500 seconds to await a keystroke. 
The PIN command detects any input at port 232 
(keyboard) and assigns that key entry as J$. 

370 Determines if J$ is the same as A$. If so, the 
delay (N) is decreased by 1/50 second, the BELL is 
sounded, and you are rewarded with a bit of 
positive feedback for one second. The program is 
directed to line 400. 

380 Determines if you have had enough and have 
hit the SPACE bar. If so, the screen is cleared and 
the program is directed to line 410. 

390 You are informed that you have not hit the 
correct key in the alloted time. Since you failed, 
the delay time is increased by 1/50 second to allow 




30 Sextant Spring 1982 


CIRCLE #118 ON READER SERVICE CARD 






you additional time in the future. 

400 The screen is cleared and we are sent back to 
line 330 for one more try. 

410 Prints your response time in seconds. 

420 Prints 2 blank lines. 

430 Gives you your starting time for comparison. 

440 If your time is less than the starting time, you 
are again given positive strokes and the program is 
directed to line 460. 

450 If line 440 requirements were not met, you 
are told that you have not improved during this 


session. 

460 Ten blank lines are printed. 

470 The buffer is cleared of extraneous garbage 
and the screen is cleared. 

480 Gives you the opportunity to continue with the 
same delays as you were using prior to hitting the 
SPACE bar. 

490 Evaluates your answer and if 'YES’, resets the 
starting time to equal your latest average and 
restarts the sequence. 

500 Clears the screen and ENDs. 


00100 

00110 

00120 

00130 

00140 

00150 

00160 

00170 

00180 

00190 

00200 

00210 

00220 

00230 

00240 

00250 

00260 

00270 

00280 

00290 

00300 

00310 

00320 

00330 

00340 

00350 

00360 

00370 

00380 

00390 

00400 

00410 

00420 

00430 

00440 

00450 

00460 

00470 

00480 

00490 

00500 


REM 

REM 

REM 

REM 

REM 

REM 


TYPING SKILL FUN AND GAMES 
by Raymond Dotson 
214 S. Berkeley Blvd. 
Goldsboro, NC 27530 


C$=CHR$(27)+"E":C1$=C$+CHR$(12):B=100:PRINT Cl$ 

PRINT TAB(22)"TYPING IMPROVEMENT EXERCISES":PRINT 

PRINT " Challenge an opponent or your own reaction time with the 

PRINT "Computer as time-keeper and score-keeper.":PRINT 

PRINT "This program will measure the time required for you to strike a key 
PRINT "corresponding to a character that will be flashed in the center of^ 
PRINT "the screen. When you respond with the correct key in a prescribed 
PRINT "time, the computer speeds up its rate. When you hit an incorrect 
PRINT "key or no key at all, the computer will slow down its rate. The 
PRINT "starting time will depend upon your request, however, a starting ^ 
PRINT "time of approximately 1 second is suggested until you become more 
PRINT "familiar with the program. (INPUT 1 or .8 or 1.4, etc.)" 

PRINT -.LINE INPUT "Starting time? " ;N2$ :N1=VAL (N2$) :N=N1*400 :PRINT C$ 

FOR 1=1 TO B:FOR U=1 TO 8:PRINT :NEXT U 
A=INT(26*RND(1)+65):A$=CHR$(A) 

PRINT TAB (40)A$:PRINT :PRINT 
PAUSE [N]:J$=CHR$(PIN(232)) 

IF J$=A$ THEN N=N-10:PRINT CHR$(7);TAB(34)"CORRECT!»:PAUSE 500:GOTO 400 

IF J$=" " THEN PRINT Cl$:GOTO 410 

PRINT TAB(36)"SORRY.:PAUSE 500:N=N+10 

PRINT C$:NEXT I 

PRINT TAB (20)"YOUR RESPONSE TIME WAS" ;N/500;"SECONDS." 

PRINT :PRINT 

PRINT TAB(20)"SINCE YOUR STARTING TIME WAS";N1;"SECONDS, 

IF N/500<Nl THEN PRINT TAB(20)"YOU ARE IMPROVING!":GOTO 460 
PRINT TAB(20)"YOU HAVE NOT IMPROVED DURING THIS SESSION." 

FOR 1=1 TO 10 SPRINT sNEXT I 

LINE INPUT "Hit RETURN to clear Buffer. ";B$SPRINT Cl$ 

LINE INPUT "Continue with the same speed parameters? ";A$:A$=LEFT$(A$,1) 
PRINT C$:IF A$="Y" OR A$="y" THEN Nl=N/500sGOTO 330 
PRINT CHR$(12):END 

The TYPING.BAS program 


Sextant Spring 1982 31 







Print Spoolers 

A Background and Reviews of 
Six Software Products to Break 
Your Printer Bottleneck 

—Kenneth A. Patrick— 


History 


Everyone who owns a microcomputer is at first 
amazed with the blazing speed with which it 
performs its tasks. Then, as time goes on and we 
become more familiar with the system, we begin to 
wish for more speed. The biggest bottleneck in 
microcomputer throughput (besides the human 
interface) is usually the print device. Printers 
usually poke along at anywhere from 10 to 150 
characters per second. Unfortunately, the proces¬ 
sor is obliged to wait for the slowest device in the 
system, and thus the processing proceeds at the 
same 10 to 150 characters per second. 

This problem has been around for ages. In the 


Printers usually poke along at 
anywhere from 10 to 150 
characters per second. 
Unfortunately, the processor is 
obliged to wait for the slowest 
device in the system , and thus the 
processing proceeds at the same 
10 to 150 characters per second. 


early 60s, the IBM 1401 days, the throughput of a 
printer was improved by allowing the device to be 
buffered. That is, the printer was given its own 
memory sufficient to hold one print line. The 
computer could blast a single line to the buffer at 
high speed, then go about its tasks. The printer 
then dumped the buffer at its own leisurely (1,000 
lines per minute) pace. A handshake was provided 

32 Sextant Spring 1982 


to test for printer-busy” so the processor did not 
waste time waiting for the printer. If the print 
device was busy, the program could go through 
another processing loop before writing another 
line. 

Two problems are evident with this technique. 
First, each program using the printer must have 
logic that allows and provides for printer buffer 
management routines interleaved with the real 
program logic. The key word is “allows”, since 
many applications are so uncomplicated that the 
process loop is too simple (using too little time 
between print lines) to gain any real throughput 
improvement. Second, if you change the print 
device to a new one with a new handshake 
protocol (or just a different speed), every program 
must be modified to provide for the new hand¬ 
shake protocols. 

A more significant problem surfaced as the 
computing power climbed. With the advent of the 
IBM 70xx series of computers, the requirement to 
have more than one printer at a time became 
critical. Either the data processing shop had to buy 
additional printers, or the data destined for print¬ 
ing had to be stored on other media until it could be 
“dumped” to a printer. Again, the IBM scenario 
usually involved an upgrade from a 1401, and so 
the 70xx programs “printed” their files onto 
magnetic tape, later to be dumped to a printer on 
the old 1401 system (which saved the 1401 from 
obsolescence for years beyond its time). This 
allowed the 70xx system to run at magnetic tape 
speed for print jobs, a hundred-fold throughput 
improvement. In addition, it provided for con¬ 
current generation of more than one report from 
the same file with printing taking place later. 

As business computers got faster, the magnetic 
tape storage medium became the serious bottle- 






neck. For mass-storage, magnetic tape is an 
important medium, even today. But it is not cost 
effective for printing files unless they are very 
large, indeed. With a disk’s radically better input/ 
output (I/O) characteristics, disk storage is orders 
of magnitude more efficient. But in the IBM-style 
print spooling game, this requires either that the 
spool-to-printer program be on the mainframe 
processor, or that the spooling system share the 
disk device with the host system. As it happens, 
both solutions are used today, sometimes together. 

True print spooling should provide user pro¬ 
grams with an environment that makes it look like 
the users have an unlimited number of printers at 
their disposal. Users should not have to be con¬ 
cerned with handshaking. (Actually, the original 
printers had the ability to report back to the user 
program when the current line reached a partic¬ 
ular page position, allowing for end-of-page testing. 
Programming techniques today usually require 
that the user program keep track of the current line 
pointer (by line-counting), and issue page ejects as 
required.) 

The print spooler task was made possible with 
the advent of interrupt-driven processors, which 
allow multi-tasking on one computing system. The 
spooler is usually set up as a “background” task that 
gets a shot at Central Processor Unit (CPU) time on 
a scheduled basis. During that time, the spooler 
performs as much spooling work as it can until its 
time is up, at which time the system schedular 
program takes back control. 

The work the spooler performs should include: 

1. Honoring new requests for service from user 
programs (open, close, write spool file). 


2. Management of disk space for spool storage 
tasks. 

3. Interfacing with all print devices assigned to it. 

4. Interfacing with the system operator for printer 
control. 

The real beauty of a true spooler is that it is 
transparent to the user programs. The program 
races along at CPU/disk speeds, and may finish 
long before the spooler ever schedules the output 
to a printer. The operator has the ability: 1) to 
cancel any print file; 2) to hold any file for later 
rinting (allows files, such as like special forms, to 
e queued—placed in a line—for later serial pro¬ 
cessing, such as printing); 3) to route spooled files 
to any of the system print devices; and 4) to 
schedule restarts and multiple copies of spooled 
data. 

The major disadvantage of a print spooler is 
that it takes disk space away from applications and 
converts it to overhead space. Today s disk storage 
devices have become more cost effective, so this 
has become less important. As spoolers evolved in 
the IBM world from ASP (Automatic Spooling 
Program) to HASP (Houston Automatic Spooling 
Program) to JES (Job Entry Subsystem), they took 
on more tasks. They not only spooled output for 
printers, but input from card readers, output to 
card punches, and eventually system-to-system 
data transfer. Spoolers became schedular pro¬ 
grams for keeping a smooth workload flowing. 
Finally, JES3 is not merely a spooler, but rather a 
complete system management facility that keeps 
track of the system resources required by each job 
versus the available system resources, and handles 
the work flow based on that information. 


Six Spoolers for Heath/Zenith Computers 


Pretty heady stuff, but how does it all 
fit into the personal computer environ¬ 
ment? Actually, you have exactly the 
same problems at home with your sys¬ 
tem as IBM has on a multi-million dollar 
system: throughput The CPU can 
operate only as fast as the slowest limit¬ 
ing device. Even a non-peripheral 
program is limited by memory-access 
speed and the CPU clock. But the 
obvious bottleneck is at the printer. As 
an experiment, run an assembly of a 30- 
page program with no listing, then with 
a printed listing. You’ll see a marked 
(downright ridiculous) degradation in 
the assembly time. A good print spooling 
program should allow the assembly to 
run at close to the former high speed, 
and print the file at printer speed. Other 
computing tasks should be possible as 
the spooler continues its printing. The 
spooler should be able to accept addi¬ 
tional files even while printing an earlier 
one. Finally, the operator should be able 


to terminate printing; to restart printing 
from the front of a spooled file; to purge 
a spooled file that is no longer wanted 
for printing; and to interrogate the cur¬ 
rent status of the spooler’s work queue. 

It was inevitable that the spooling 
task would be implemented on the 
Heath microcomputer system. First, the 
technique was old, and fairly stable in 
theory. The Heath system uses either an 
8080 or Z80 processor, both of which 
allow interrupt-driven multi-tasking. 
And most printers run at very slow 
throughput rates, triggering the soft¬ 
ware Handy-Dans into action. The 
actual implementations of the spooling 
task, however, are quite far apart in 
design and capability. 

There are several spooler programs 
available for the H89. Most are offered 
for sale, but at least one is available on 
CompuServe’s personal computing net¬ 
work, MicroNET. This review is of five 
of the most widely known spoolers for 


Heath’s HDOS 2.0, and one for Heath’s 
CP/M 2.2. Each has its own good and 
bad points. Limited as we are to 64 K of 
memory in the H89, it is likely impossi¬ 
ble to provide all the design features 
described above in any one implement¬ 
ation. Choosing a spooler program 
requires evaluation of the trade-offs in 
your particular computing environment 

A note on my tests 

In testing the spoolers in this review, I 
particularly relied on two programs that 
serve to show up possible spooler prob¬ 
lems. One program that does not take 
kindly to a time-sharing environment is 
Dave Murry’s Missile Control game. I 
also used the pie editor program from 
Software Toolworks, pie requires specif¬ 
ic timing considerations to determine 
whether a function key was pressed or 
the human operator was entering actual 
escape sequences. I also usedsYSCMD/plus 
from D-G Electronic Developments 


Sextant Spring 1982 33 




Company. Its chan tracking option 
employs time-sharing to see channel 
usage. And my drive set-up is a three- 
disk system with one Siemens (40 track) 
and two Tandon (80 track) drives. 

SPOOL-N-GO (Version 3.0) by 
Barnard Software Services 

spool-n-go (SNG) is a fine software 
product for the H89. It is described as 
allowing you to “...run programs on your 
computer at the same time your printer 
is listing a file”. And that it does, and 
does well. SNG is distributed on a single 
5W' disk with 14 pages of documenta¬ 
tion. Installation involves more than just 
copying SNG from the distribution disk 
with a simple pip command, but the 
printed documentation takes you 
through the ten minutes’ work smoothly. 
You will probably need the manual 
beside your keyboard for the first few 
days of use, but thereafter you’ll have 
the commands mastered. 


SNG is primarily a device driver 
(sp.dvd) and operator interface program 
(spool abs). Two versions of the device 
driver are provided: one is for H 14-type 
printers using hardware handshaking 
techniques; the second is for Diablo and 
similar printers using the etx/ack proto¬ 
col. The driver controls both the spool¬ 
ing task and the print device. During 
installation, you are directed to copy the 
appropriate driver to your system disk, 
renaming it sp.dvd. Each driver has 
several set commands that allow you to 
tailor it to your hardware (see Table 1). 

The spooler.abs program interfaces 
between the operator and SNG. It pro¬ 
vides the commands listed in Table 2. 

As can be seen, SNG is not a simple 
package. It has alot of options and 
flexibility, but with that plus is the minus 
of the time required to learn them all. 
However, once you’ve set it up to run on 
your system, many commands are not 
required unless your hardware changes. 


Spooler initialization can be made auto¬ 
matic through the use of the Heath Disk 
Operating System (HDOS) prologue 
facility (as can be done with all the 
HDOS spoolers in this review). 

Considerations for SNG include the 
fact that you must allocate disk space for 
the spool area. For reasonable perform¬ 
ance, the the spool area should be 
about 50-100 disk sectors. This may 
make it almost impossible to use SNG on 
a single disk system using standard 400- 
sector, 5W' floppy disks. 

The version I have, moreover, sup¬ 
ports only the 5 W single side, single 
density (SSSD) disks, not the newer 
Tandon-style systems nor 8" disks. I can 
only use my 40-track Siemens drive for 
spooling. The drive cannot be dis¬ 
mounted as long as SNG is active, and in 
my mixed mode environment, Logical 
SY0: must be Physical SY0: which must 
be the SSSD drive. Careful file place¬ 
ment and system configuration can 
reduce the impact of this requirement. 

Software Toolworks has recently re¬ 
leased SNG Version 3.2, however, and 
according to reports, it’s “compatible 
with all disk devices and drivers running 
under HDOS 2.0”. 

I’ve used SNG since June 1981.1 find 
it more transparent than some older 
packages I’ve used, but it does take up 
disk space. Until I got the Tandon drives, 
my space was at too high a premium to 
allow high spool space. Consequently, 
performance on large print files was 
degraded until spool space had been 
opened up by printing enough of the file 
being spooled. SNG does make the 
system wait if no more spool area is 
available, but the spool area is released 
sector-by-sector as the spooled data is 
printed. You can spool as many files as 
you wish, one at a time, as long as there is 
spool space. There is no provision, 
though, for purging a single file from a 
group previously spooled. 

One really nice feature is that you can 
rename SP: as lp : , thereby allowing any 
HDOS program to use it as if it were a 
normal line printer. Printing of a spool¬ 
ed file begins as soon as the first spool 
sector is written, allowing some overlap 
of printing and processing. You can have 
the printer go off-line (or out of paper) 
without serious problems. SNG just 
waits until the device is again available, 
while foreground work continues. 
Typing bye causes HDOS to shut down, 
but SNG will continue to print its spool¬ 
ed data until it’s gone, or the drive is 
physically made “not ready”. I liked this 
feature, since it prevented me from 
unintentionally terminating a spooled 
listing. 

One problem with multi-tasking pro¬ 
grams is that they sometimes take too 
much of a time slice while working. SNG 
is almost transparent, but it does make 
the pie editor fail to recognize some 
function keys. It does not, though, 


HELP 

Provides brief list of all SET options 

LINES nnn 

Printed lines per page before auto-eject 

PORT nnn 

Port to be assigned for printer 

BAUD nnn 

BAUD rate for printer 

AUTO-CR 

Insert <cr> after each <lf> and <ff> 

NOAUTO-CR No <cr> insertion 

CTS 

Hardware Clear-to-send handshaking 

DTR 

Hardware Data-Terminal-Ready handshaking 

AUTO-ON 

Causes SPOOLER enable on boot-up 

AUTO-OFF 

Turns off SPOOLER enable on boot-up 

H14 

Send H14 set-up chars at OPEN time 

NOH14 

Suppress H14 set-up chars at OPEN time 

VAL 

Allow only valid HI4 chars & controls 

NOVAL 

Suppress validation of control sequence 

LPIn 

H14 only: Set Lines-Per-Inch to 6 or 8 

WN nnn 

HI4 only: Set NARROW Chars-Per-Inch 

WW nnn 

H14 only: Set WIDE Chars-Per-Inch 

BURST nnn 

Diablo only: Printer char buffer size 

Table 1: SET SP: commands 

HELP 

Brief list of SPOOLER commands 

ON 

Activates the SNG. Data spooled to SP: before SNG is 


active will be lost. (Nice null-device). 

OFF 

Terminates SNG. Any unprinted spooled data is lost. 

STOP 

Stop printer temporarily, no lost data. Resumes at next 


line to be printed. 

START 

Resume printing where last left off. 

STATUS 

Displays how many sectors of spool space are available for 


spooling, ON/OFF state of SNG. 

ALLOCATE dv:-nnn Allocate the disk space required for spool storage, dv: is the 


device, nnn is the number of sectors to be reserved. SNG 


manages this disk space entirely. 

DELETE 

Deletes previously allocated spool space. 

FP OFF/ON 

H8 only: Toggle front panel (FP) clock for performance 


improvement. Off cuts system overhead. 

RENAME d\ 

Allows renaming of SP.DVD to your name. Typical is to 


make it LP.DVD which makes SNG transparent to the user. 


Also allows for multiple copies of SNG on one disk (only 


one in use at a time) for different printers. 

Table 2: SPOOLER.ABS commands 


34 Sextant Spring 1982 




seriously impact on Dave Murry’s 
Missile Control. 

DESPOOLER by Tom Jorgenson 

On a much simpler level, despooler 
performs nearly all the same tasks as 
SNG. The despooler distribution disk 
contains several device driver files, one 
of which you choose to copy and rename 
to sp.dvd on your system disk. Drivers for 
the Heath-standard printers are on the 
disk, along with a .DOC file, an abort.abs 
file, and a Microsoft BASIC demonstra¬ 
tion program using SP:. If you have a 
printer not supported by the Heath- 
supported device drivers, Tom offers a 
“Universal” sp.dvd that does the spool 
management tasks but sends the actual 
print-destined data to the LP: device¬ 
driver. This mode uses more CPU time, 
and results in slower throughput, but it 
does allow you to use your tailored 
device driver for your special printer 
(Epson owners take heed). 

The documentation is 9+ pages, 
covering most aspects of installation. 
There are no command summaries, as 
despooler has no special commands. 
The standard set LP: commands in the 
HDOS documentation work on all of the 
included drivers. 

The basic technique used by 
despooler is quite different from that 
used by SNG. It does not allocate a 
dedicated file space for spool manage¬ 
ment. Rather, if you wish to print some¬ 
thing, you must store it on a disk file. 
When the file is closed, you issue a pip 
command of this form: 

copy sp:=[dv:]file.ext [,[dv:]file.ext] 

despooler establishes a table entry to 
queue the spooling. The spooling func¬ 
tion itself uses the queue to get work. 
The actual spooling is performed from 
the disk file specified to the print device. 
This requires that the source file must 
be mounted until it is printed by de¬ 
spooler. 

The mount requirement is different 
from that of the SNG spool file require¬ 
ment. The source file (rather than a 
spool volume) must be mounted, and 
the space on disk is required only for the 
duration of the spool function. Once the 
file is printed, it may be deleted or 
dismounted. This technique cuts your 
disk system impact to a minimum. 
despooler does not provide for auto¬ 
matic deletion of a printed file, but you 
could set one disk aside for spool files, 
and do cleanup on it as required. 

Operationally, despooler works quite 
well. I gave it the acid test of pie and 
missile control, and it did fine. There 
are few occasions where the foreground 
seems to be interrupted significantly. 
missile control is able to demonstrate 
this by moving the cross-hairs contin¬ 
uously. If it stops, the spooling program 
has taken over the CPU for too long a 
time. For despooler, the take-over is 
much more noticeable if you use the 


universal sp. driver than if you use Tom’s 
H14 driver. The interruption is not 
overbearing, but it is a little irritating. 
pie, however, had no timing problems 
from the keyboard. 

There were several other things I 
noticed with despooler. When its queue 
is full (six files) it merely reports “device 
NOT CAPABLE OF OPERATION” when you 
attempt the seventh spool. When you 
use the universal driver with your own 
lp.dvd, switching the printer off-line will 
stop the system. There is no provision 
for displaying queue status. One neat 
thing: bye did not shut the system down 
unless despooler was inactive. It merely 
returned with the HDOS prompt. 

despooler is not invisible to the user. 
You must write the file to disk and then 
write the command to schedule it for 
spooling by opening SP: for output and 
writing a record that is a despooler 
command. So you can’t just print a file 
from within pie by SAVEing to LP: orsp : . 
The only device supported is the stand¬ 
ard 5%" SSSD disk, as well. 

On the other hand, despooler goes in 
quickly. It took five minutes to get the 
first file printing. Most application pro¬ 
grams showed no impact from it. Tom 
indicates that despooler does not mod¬ 
ify HDOS in any way, and should be 
compatible with future versions of 
HDOS, or at least should be upward 
compatible, given a fresh assembly from 
Tom. Additional disk space is not re¬ 
quired to get a file printed unless it is a 
print-file from a program. 

SPOOLER by Bill Morgan 

In November 1980, Bill Morgan 
announced his HDOS spooler in Buss 
#28.1 sent off for it immediately, as I had 
just purchased my H89 and was anxious 
for a spooling package. It arrived quickly, 
went in with no problems (once I figured 
out I had to set LP: baud and port) , and has 
performed almost flawlessly since. 

spooler is similar in design to de¬ 
spooler. It establishes a queue of up to 
16 files to be printed/spooled, and 
services that queue as a time-sharing 
task. The spooler distribution disk in¬ 
cludes sp.abs for spool queue mainten¬ 
ance, ex.dvd as the primary spooling 
driver, and several device drivers to 
replace the Heath print device driver 
files. 

You will have the same restrictions 
with spooler as with others that don’t 
maintain a spool area: the files to be 
spooled must remain on-line until the 
spooling operation is complete, spooler 
recognizes that you may have forgotten 
whether a certain file has been queued 
for printing, so a queue inquiry is pro¬ 
vided. You can also delete a single file 
from the spool queue without affecting 
others. Finally, you can specify multiple 
copies as a part of the spool command. 

spooler has less impact on the system 
than some other spoolers, but you will 


know it’s there, missile control will not 
allow spooler to run at all, but the print 
function resumes normally after the 
game is over, pie seems to be affected in 
the same way most other foreground 
tasks are. spooler locks up the system 
during the printer access with my Epson 
printer. The Heath H14 I used to have 
did not exhibit that problem; with it, 
spooler was quite inobtrusive. I assume 
a proper handshake will resolve this 
with the Epson. Again, the package is 
not transparent to the user, but requires 
a specific command to get a file printed. 
You cannot initiate a spooling task from 
your program unless you can stuff a 
command into the type-ahead buffer. 

Normally, spooler takes about 3% of 
the CPU time, but an additional com¬ 
mand allows it to take the system 
completely if you’re in a hurry. I noticed 
on my H14 that spooler does not keep 
the printer busy, but runs it in one-line 
spurts. This kept the print-head temper¬ 
ature light out, but slowed down the 
throughput of the device. The Epson 
runs even less with its slightly higher 
speed. A while back Bill offered a pro¬ 
gram modification by phone to decrease 
the “quiet” time between time slice 
stealing, and tweaking these two bytes 
improves performance. 

Saying bye while spooler is working 
shuts the system down, regardless of the 
queue status. This is a flaw, as bye is 


ATT: H-14 USERS! 


Super, high quality ribbons are avail¬ 
able for your H-14. Nylon in com¬ 
position. .. . “ROYAL BLUE” in 
color! Really different. $4.95 ea. or 
3 for $12.00. Please add $1.25 for 
postage & handling. (NY residents, 
add sales tax.) 


H-19/H-89/H-8 USERS 


We also carry a complete line of 
programming aids for your computer. 
*Flowcharting Sheets 
*Video Layout Sheets 
*Printer Layout Sheets 
*Graphic Plotter Sheets 
*Printer Plotter Overlay 
*COBOL Programming Sheets 
* Paper Porter 

$4.50 ea. (ppd) 


Send for a SPEC sheet. . . 

The PC&J Graphics Co Inc 

PO Box 108 
Deer Park, NY 11729 
516-667-8076 

CIRCLE #120 ON READER SERVICE CARD 


Sextant Spring 1982 35 








sometimes sent by user programs not 
knowing the system status. 

You cannot use Heath’s standard 
device drivers for the printer. The 
device drivers supplied were for the 
standard Heath printers, and included 
some nice features. First, since they are 
standard format, you can use them in 
normal mode as long as spooler is in¬ 
active. They do not page-eject at end-of- 
file as do all the Heath drivers. This is 
because spooler actually closes and 
opens both the printer and the disk file 
on a once-per-sector basis, leaving the 
channels available when spooler is not 
in control. (This was confirmed by using 
the D-G Electronic Developments 
Company SYSCMD/plus with its chan track¬ 
ing option.) In addition, device initial¬ 
ization is performed only once at initial 
open time, spooler ensures that files 
bound for the printer will always start at 
top-of-page, but your BASIC programs 
will have to handle forms-eject on their 
own. Finally, the lphm.dvd Bill provides 
transcends the fixed left margin of the 
HI4 printer with a new set option, left, 
to set the left margin on the page, nice 
for binder-destined copy. 

spooler has another advantage in 
that through device drivers it will 
operate with any HDOS disk device. 
Some spooling packages work only with 
Heath standard SSSD 5 l A” disks. This 
package is one that will work using the 
new Tandon-style disk drives. 

Other features spooler has include 
the ability to have multiple print devices 
(not run concurrently, but first in/first 
out) ,BUFFERing of the printer data, spool¬ 
ing to non-printer devices (like md : 
modem drivers, VO: Votrax voice simula¬ 
tor drivers), and a faster command that 
makes spooler the foreground task to 
speed up those hurry-up jobs. 

SF.DVD by Dale Lamm 

Dale Lamm offers some fine quality 
software for the asking. He is extremely 
active on CompuServe’s MicroNET in 
the Heath Special Interest Group. His 
sp.dvd device driver (sp : ) is inthe public 
domain and is available through the 
downloading facilities on MicroNET. I 
downloaded a copy of SP: in August 1981, 
and was pleased to find it of good 
quality. SP: follows the technique of 
despooler and SPOOLER in that the 
device driver accepts commands as a 
file written to it, and then performs the 
requested work as a time-sharing task. 

A short note of clarification is in order 
before discussion on SP: can continue. 
Dale wrote SP: some time ago as an 
exercise in writing device drivers. 
Hence, he has not attempted to opti¬ 
mize the code, or provide other per¬ 
formance or operating enhancements. 
He is quick to point out that he offers it 
(free) only because some Heath hobby¬ 
ists cannot justify the cost of other 
spooling packages. It will be evident 


when you see the code that Dale does a 
very nice job indeed, even if it’s for non¬ 
professional purposes. 

SP: can handle only one scheduled 
task at a time, and differs from the other 
spoolers in this review in that it includes 
no other software. YourLP: device driver 
can be used, or any other device driver, 
for that matter. Dale has some other 
sophisticated drivers including a md : 
driver for modem handling. SP: shares 
with spooler the ability to spool to any 
serial device. You can schedule a 
modem upload to a host, and go on with 
your work while it does the job. SP: 
reports on line 25 its current status, and 
also sounds the LP: bell (if one exists) at 
end-of-file. 

SP: seems to handle all HDOS disk 
devices as input drives. I used the 
Tandon disk drives as source with no 
glitches. A disk error that I forced 
caused SP: to do retries through the SY: 
driver and report the problem with the 
standard Heath error messages. 

Performance-wise, SP: left something 
to be desired on my system. My Epson 
MX80 is wired as an H14, using the 
Heath-standard LP: driver. The other 
spoolers in this review seem to allow 
varying degrees of time-sharing, but 
within acceptable limits. SP: takes the 
majority of time from the system in my 
configuration. My Epson did not then 
have a 2K buffer, but a spooler should 
allow for that sort of thing. I suspect the 
problem lies in the device driver I am 
using, pie performance is unacceptable, 
as is missile CONTROL. In addition, the pie 
keyboard timing problem is evident 
while SP: is running. Other programs 
(like Microsoft BASIC) show less of the 
degradation. In all fairness, it’s likely 
that a device driver written for the 
Epson would probably improve per¬ 
formance considerably. 

Another drawback is that SP: can 
handle only one file at a time, and 
provides no copies option. You have no 
indication of how much of a file is 
printed or remains. 

Before you think I’m too down on SP:, 
let me point out that Dale Lamm 
supplies SP: in ASM format. You don’t 
like the way it works? You can change it 
to your heart’s content. This is the only 
package reviewed that is offered in 
source format. I suspect I can tweak the 
code to take fewer or shorter time slots 
and remove the performance problems. 

MULTI-PRINT from 
T ir E associates 

T & E associates sent me an evalua¬ 
tion copy of their spooling package, 
multi-print, shortly after I sent sextant 
this article. More than a month went by 
before I had enough information to 
make a fair evaluation. Even though it 
was nearly deadline time, sextant s 
editors agreed that to leave it out would 
be unfair, and might ignore an important 


new entry in the field. Here are the 
results. 

multi-print was developed by Crea¬ 
tive Resources in Houston, Texas, under 
the direction of T & E associates and 
with technical assistance provided by 
Software Helpline. It was announced to 
me by Tom Cauthen of T & E on the 
phone, and he seemed to be quite proud 
of it. The package he sent me did not, 
however, include a device driver that 
could handle my Epson printer. Tom 
spent some time researching, and called 
me back with a patch to make one of his 
drivers do the job. I had a lot of trouble 
with it, though, and nearly gave up 
before I discovered I had a bad 2K 
buffer board. Once that was fixed, I 
began the evaluation afresh. 

multi-print comes with a complete 
set of Heath-compatible printer device 
drivers. T & E explains that to interact 
properly with a device driver, the con¬ 
versation must be two-way, hence their 
own versions of the drivers. Optionally, 
you can purchase their ecoset printer 
drivers. These drivers report their cur¬ 
rently set options. The standard drivers, 
which I received, had versions for both 
HDOS 1.6 and HDOS 2.0. 

Installation involves copying the 
sp.dvd driver (multi-print) and one or 
more of the printer drivers to your 
system disk. I should point out that 
multi-print claims to drive up to four 
different printers simultaneously (and 


The most remarkable 
thing about MULTI¬ 
PRINT is that it seems 
to keep the printer 
running at rated 
speed with little 
apparent degradation 
in processing time. 


independently). Once sp.dvd is install¬ 
ed, you set options to identify which 
printer is assigned to each of the four 
logical spooling devices, which disk 
drive is available for a temporary spool 
volume, and how many sectors are avail¬ 
able on that volume for spooling. If you 
specify more than are available, multi¬ 
print merely uses what is available. An 
interesting point is that this disk space is 
allocated only on an as-needed basis, 
and the space is freed as soon as the 
spooled file is printed. 

Two modes of spooling are available, 
a hybrid of techniques. If you use the pip 


36 Sextant Spring 1982 




command to route a file to the printer, 
spool space is not used, since multi-print 
reads the file directly as it is printed. 
This requires the file to remain available 
until the printing is complete. The other 
mode is used when you write to device 
SPn: from a program. In this case, the 
output is spooled (similar to SNG) to 
disk, and printed. 

Using pie as an indicator of the time 
slicing, I was shown the unfortunate 
problems that arise because pie times 
console input as a technique for recog¬ 
nizing when a function key is pressed. 
multi-print takes slices regularly, caus¬ 
ing very smooth printer operation. This 
also interrupts the user program, pie in 
this case, and breaks timing loops, if they 
exist. The resulting interleaving of CPU 
usage makes pie virtually unusable while 
multi-print is printing, a problem that 
clears up when the last file is printed. 

missile control runs a bit slower, but 
is quite smooth while printing is going 
on. The most remarkable thing about 
multi-print is that it seems to keep the 
printer running at rated speed with little 
apparent degradation in processing 
time. T & E suggests that the printer be 
run at a communication speed at or one 
step higher than is required to keep it 
busy, 2400 bits per second (b.p.s.) for my 
Epson, 1200 b.p.s. for the H14. This cuts 
down the number of characters multi¬ 
print attempts to print per time-slice, 
and makes everything smooth out. I ran 


at both 9600 b.p.s. and at 2400 b.p.s., and 
performance was considerably smooth¬ 
er at the lower rate. 

multi-print has some drawbacks. I 
tried several techniques, and never did 
get Microsoft BASIC to write a file to 
SPn- T & E attempted to point the finger 
at Microsoft’s memory management 
routines. In addition, I was unable to 
save a file to SPn: from pie, a common 
technique with standard lp.dvd drivers. 
Again, T & E thought pie was the culprit. 
I was not convinced, but I was not really 
interested in the details. The point is, 
those techniques don’t work, but T & E 
gave hope that a future release might 
make them work. Last, you cannot use 
printer device drivers other than those 
supplied by T & E, making all those nice 
custom drivers obsolete if you want to 
spool. 

On the plus side, multi-print ran 
circles around the other spoolers while 
an assembly was running, keeping the 
printer busy at rated speed as far as I 
could tell. If you have more than one 
kind of printer, multi-print handles up 
to four at a time. Commands are provid¬ 
ed to control each with a few quick key 
strokes, even while you are running 
another program. Taking a printer off¬ 
line made no impact on processing, 
though the time-slicing was obviously 
continuing as multi-print checked the 
printer status, waiting for a chance to 
continue. 


Finally, I suspect that the associated 
ecoset drivers might make multi-print 
more flexible if you wish to invest the 
extra cost. 

DESPOOL for CP/M by Digital 
Research 

It seemed unfair to leave CP/M out of 
this review. Many Heath owners are 
dual operating systems people, and 
would naturally look for a spooling 
package for CP/M while shopping for 
the HDOS version. The Heath catalog 
offers eIespool as the answer, despool 
comes in the standard Heath carton 
with disk in sealed envelope, profession¬ 
al-looking documentation, and a sheaf of 
license agreements, despool itself is a 
single .COM file that you can copy onto 
your disk with a simple pip command and 
execute. 

DESPOOL actually loads the console command 
processor (CCP) and itself into high memory and waits 
for a CTRL-F, whereupon it requests the 
name of a file to be spooled. Once given 
the name, it remains dormant until there 
is time for it to begin the spooling work. 
Where does it get its time slice in the 
CP/M operating system (which is not 
interrupt-driven)? The slowest device 
in any home computing system is likely 
the human operator, despool cashes in 
on console wait time. Whenever the 
CPU is waiting for input from you, 
despool is doing its thing. Degradation 
of the keyboard response is evident, but 



N0¥ - HERTH/ZENITH GRAPHICS FOR EPSON 


THE ULTIMATE MX PRINTER DRIVER! 

- Runs the printer with standard cable, no 
wiring or soldering, just set the switches. 

- Controls all printer funtions froii any text 
file or your keyboard. 

- Special code for long lines, overstrike, 
underlining, super and subscripts. 

- HDOS SET options displayed with HELP co»»and. 

- HDOS version has LP8: -> LP4: progra®ftable 
initialization sequences. 

- Rssefibly switches for serial and parallel 
interfaces! H/Z-89, H8-4, H8-5 serial? FBE, 
TRUDRTR, H8-2 parallel? or add your own. 

- Full source code included? change as desired. 

- Full docuftentation is included on disk. 

- HDOS, CP/H 2.2.82, and CP/M 2.2.83 versions. 

Only $28.88 postpaid. State version desired. 


TICKER TAPE PROGRAM - for HDOS Microsoft BASIC 
$1.2 inch high noraal and inverse graphics 
are ssaoothly scrolled horizontally across the 
screen. Up to 255 characters per message. 

* 8x18 aatrix character generator included. 

* Great for shows, deaonstrations, etc. 

Only $15.88 postpaid. 


LINDLEY SYSTEMS 21 Hancock St. (617) 275-6821 
Bedford, MR 81738, Call 5 to 18 PM 
All above on 5 1/4° single density diskette. 


• Easy to use 8x18 character generator to design 
your own set of 128 characters. 

• Horaal and inverse printing of all characters. 

• H/Z-19 character set supplied. You can start 
with this set and generate any language or 
special graphics you desire in an 8x18 aatrix. 

a All characters can be printed froa keyboard or 
text file. 

• Supports ESC p, q, F, and G? not ESC Y. 

• Produces 68 or 128 characters, 488/968 dots, 
per line. 

• Excellent for foras and special effects. 

Only $25.88 postpaid, HDOS now, CP/M soon. 


CHECK MASTER - for HDOS Microsoft BASIC 

a Balance your checkbook quickly and easily. 

* Archival file is aaintained for tax records 

* Transaction description, date, aaount, and 
cleared switch are kept and displayed in both 
archival and current file 

4 Balances adjusted for uncleared checks and 
unadjusted are displayed sinultaneously. 

+ Easy printout of current checkbook page on 
either screen or printer. 

* Extensive error-trapping and correction during 
printout and data entry. 

* Statement processing and checking is automatic. 

* Includes six pages of instructions on a 5" disk 
Only $15.08 postpaid. Requires 32K RAM, 


CIRCLE #119 ON READER SERVICE CARD 


Sextant Spring 1982 37 











not overbearing. 

At first I was impressed. After all, I 
had just installed despool in 60 seconds, 
and here it was printing out a file. I 
decided to do a COBOL compile and 
check despool’s performance. After my 
explanation in the preceding paragraph, 
you might guess that despool would 
remain dormant throughout the com¬ 
pile, but I just wasn’t thinking too 
clearly, despool was dormant, dismally 
so. There are no console waits during 
the compilation process, so despool 
never got control. Although I liked its 
performance while the system was idle, 
a good spooler should steal time as 
needed to continue printing during 
most normal processing. 

Digital Research and Heath contend 
that much of the work on the system is 
keyboard oriented: pie or ED, file man¬ 
agement, MBASIC game-playing, and 
the like. I suppose that’s possible, and 
despool performs well with these types 
of programs. I just expected more from 
the CP/M experts, especially at the 
premium price demanded. The docu¬ 
mentation provided is as we have come 
to expect from Heath: excellent. The 
program itself was a small disappoint¬ 
ment to me. 

Vendor notes 

Now some vendor notes. Walt 
Bilofsky’s Software Toolworks is market¬ 
ing SPOOL-N-GO. In general I am pleased 
with the performance of the Toolworks. 
One drawback is that there is no 
organized form of upgrade notification. 
You have to hear of the newly-updated 
package via your Heath store, Buss, or 
one of the networks, or by inquiring 
directly through the Toolworks. I’d 
rather see a release notice from the 
Toolworks to me. 

Jeff Barnard is the author of spool-n- 
go and I talked to him concerning the 
next upgrade. His new version supports 
all HDOS disk devices, and more print 
devices. That release (3.2) should be out 
by the time you read this. The Toolworks 
has an upgrade plan that allows you to 
get a current release for $10 if you are a 
registered owner. 

despooler is offered by Software 
Wizardry. Tom Jorgenson, author and 
distributor, indicates a new release is in 
the works. The new release will support 
more disk devices, and have a full 
complement of print device support. A 
release date was not offered, but I got 
the impression it was imminent. In any 
case, all of Software Wizardry’s cust¬ 
omers will receive notice of the up¬ 
grade, which will be at nominal copy 
costs. (After my discussions with most 
vendors concerning their products, by 
the way, I came away personally 
convinced that Software Wizardry 
would prove to be the most responsive 
to user requirements in the most timely 
manner.) 


38 Sextant Spring 1982 



Bill Morgan sold me the spooler by 
mail. It was my first mail-order software 
purchase, and I’ve been quite pleased. I 
had to call Bill in California when I first 
got spooler, since I was a neophyte 
hacker and knew not about set lp:. I 
tried recently to get hold of him concern¬ 
ing support for the Epson printer, but 
his number in California had ben changed 
with no referral. In case you’ve run into 
the same problem, his new number is 
listed in “Supplier Notes” and the best 
time to reach him is between 9:00 p.m. 
and midnight, Pacific Time. 

As stated earlier, Dale Lamm offers SP: 
free for the taking. You must download it 
from CompuServe MicroNET, either in 
source or .HEX format. In my discussion 
with him, he said that interest in spool¬ 
ing packages is growing again, and he 
may try to ‘clean up some code’ in SP:. He 
again cautioned me that it was not 
developed as a commercial venture, and 
he offers no guarantees. I suggest that if 
you have questions you leave a note to 
Dale through the Heath Users’ Group 
Bulletin Board on MicroNET. 

Regarding multi-print, I should 
mention that I got a lot of support from 
Tom Cauthen. We spent several hours 
discussing the finer points of HDOS 
interface conventions, the spooling 
environment, and his product in partic¬ 
ular. He seems quite proud (and right¬ 
fully so) of multi-print, and plans further 
enhancements. I’m sure that full support 
for Epson printers will be forthcoming. 
If Mr. Cauthen will support all of his 
users as he did me, multi-print -will 
succeed in the marketplace. 


Digital Research was not contacted in 
regards to any pending changes possible 
for despool. 

Conclusion 

Don’t take the plus-and-minus points 
at face value on any of these packages. 
Each has its own faults and strong 
points. A comparison chart is provided 
to help you evaluate each in light of your 
own system configuration. There are 
other spooling packages, as well. It’s not 
possible to test every one. I know of at 
least one other package offered last year 
that was well over $150, and very 
sophisticated. There are others in the 
works now for near-future release. 

It’s the prerogative of any reviewer to 
offer a ‘winner’ badge after the deed is 
done. I cannot, as each package has its 
own strong point(s) and failing(s). Nor 
should you accept my word alone on 
these. Remember that your printer 
interface may work differently from 
mine (an admitted kludge job, but it 
works). I have a preference for spool-n- 
go in a native three-disk HDOS en¬ 
vironment, as it is the most transparent 
of the spoolers. The version I have had 
does not support my new Tandon disk 
drives, though, so that’s been my trade¬ 
off. You’ll have to choose yours. None of 
the spoolers reviewed gets a rotten 
apple award. That’s not unusual for this 
kind of program, though, since a spooler 
either works or doesn’t, and perform¬ 
ance evaluation is really the only 
measuring stick. 

I do recommend that if you have a 
printer, you should get some version of a 


spooler. If you’re like me, your available 
time is at night, and short at that. Any 
software that improves your product¬ 
ivity ought to be worth its weight in 
Munchkins. 

Supplier Notes 

SPOOL-N-GO, $29.95. Copyright 1981 
by Barnard Software Services, distributed 
by Software Toolworks, Walt Bilofsky, 
Prop., 14478 Glorietta Drive, Sherman 
Oaks, CA 91423; 213/986-4885. 

SPOOLER, $39.95. No copyright date, 
proprietary license fee required. Bill 
Morgan, 6133 Blossom Avenue, San 
Jose, CA 95123; 408/629-0129, 9:00 
p.m. to midnight, Pacific Time. 

DESPOOLER, $34.95. Copyright 1981 
by Tom Jorgenson, distributed by Soft¬ 
ware Wizardry, 122 Yankee Drive, St. 
Charles, MO 63301; 314/946-1968, 
after 4:30 p.m., Central Time. 

SP.DVD, no charge. Public domain by 
Dale Lamm, CompuServe 70555,302. 
Retrieve through MicroNET’s HUG 
Bulletin Board, or through the ACCESS 
facility. 

MULTI-PRINT, $40. Copyright 1981 
by Creative Resources. Distributed by 
T & E associates, Inc., P.O. Box 362, 
Millersville, MD 21108. 

DESPOOL for CP/M, $50. Copyright 
1980 by Digital Research, distributed 
by Heathkit Electronic Centers nation¬ 
wide and by catalog. 


Print Spooler Performance Chart 

The following chart is a comparison of the various spooling programs based on a “benchmark.” The benchmark involves assembling an 
averaged-sized .ASM file (a printer device driver) while spooling another file to the printer. A good spooler will allow a good overlap of assembly 
and print spooling, the spooler continuing to print while the assembly progresses. In each case the file to be printed was spooled with the printer 
off-line, then the assembly was triggered (by DO) simultaneously with starting the printer. 

The assembly alone (with no print file specified) took 0:45. 

The assembly with the list file to disk (no spooler running) took 0:58. 

The assembly to Heath’s LP: device took 10:23. 


The printing of the test file (150 records) with PRINT and Heath’s 

Jeff Barnard’s 

LP.DVD took 3:21. 

Tom Jorgenson’s 

Bill Morgan’s 

Dale Lamm’s 

T & E’s 


SPOOL-N-GO 

DESPOOLER 

SPOOLER 

SP.DVD 

MULTI-PRINT 

Time to print 150 line test file with no other 
loads on system 

3:34 

UNIVSP LPH14 

3:40 3:38 

“SLOW” “FAST” 

10:48 4:00 

4:31 

3:23 

Time to assemble with test file printing, lines 
finished when Assembly done (“>” prompt) 
Print to SPOOL/lines done 

Print to File/lines done 

1:07/43 lines 
1:10/37 lines 

1:05/6 1:00/4 

: 58/no lines 

NO 

1:00/no lines 

:63/46 

:59/46 


Notes: 

*Since SPOOL-N-GO is a writeable device driver, timings were made for both writing the disk file as in the case of the other spoolers, as well as 
writing the assembly list file to the spool behind the test file already spooled. 

*Both SPOOLER and SP: completely abandoned printing while the assembly task was underway. Both resumed printing as soon as the > 
prompt appeared. 

*With MULTI-PRINT, the printer in both assemblies had 20 lines extra stored in the printer buffer in both assemblies, which would have been 
printed with a faster printer, such as an Okidata at 120 characters per second. 

*DESPOOL for CP/M was not benchmarked. ___ 


Sextant Spring 1982 39 




DG IS Heath/Zenitl 

♦♦♦with the F 

H8 PRODUCTS 

The Most Extensive Line of Hardware Support for The H8® 

*DG-80/FP8 

Z80® based CPU including the powerful FP8 monitor—Both only $249.00. The acclaimed FP8 monitor 
package is now included with the DG-80 CP(J! 

*DG-64D/64K RAM Board 

Reliable, Low Power, High Capacity Bank-selectable RAM 
Priced from $333.00 (OK) to $399.00 (64K) 

*DG-64D5 64K/5 volt only RAM Board 

SUPER low power, Reliable, High Capacity, Bank Selectable RAM from $333.00 (OK) to $499.00 (64K) 

*DG-32D/32K RAM Board 

Low cost, Dependable RAM for the H8 32K Version Only $179.00. 

*DG-ADP4 

H17-4 MHz disk adaptor—$19.95 

64K STATIC RAM-PROM BOARD 

IF YOU STILL BELIEVE YOU WOULD RATHER USE STATIC MEMORY...OR IF YOU NEED A PROM/EPROM 
BOARD... 

OR IF YOU NEED MORE ROOM ON YOUR H8 MOTHER BOARD... 

OR IF YOU HAVE BEEN WAITING FOR STATIC MEMORY FOR THE H8 TO BECOME REASONABLY PRICED. 

WE HAVE THE ANSWER—THE STATIC 64 RAM BOARD 

FULLY STATIC. 

SUPER LOW POWER—Power dissipation typically less than 4 watts (less than any memory board available for the 
Heath H8). Uses Single Supply 5-Volt memory devices. 

CAPACITY—Up to 64K RAM OR Up to 64K EPROM (type 2716/2516) OR any combination of RAM and EPROM up to 64K. 
SPEED—4MHz with NO wait states. 

Compatible with the OLIVER ADVANCED ENGINEERING PROM Programmer Model #PP-2716. 

Bank-select fully compatible with the DG-64D—Hardware selectable in 8K increments/software selectable in 16K 
increments. 

Bank-select port addressable to any of the available 256 I/O ports using solderless jumpers. 

On-board ROM-disable port for use with the DG-FP8 Monitor Package 

Fully assembled and tested. Priced from $299.00 (OK) to $599.00 (64K). 16K Chip Sets: $125.00. 

H8/H89 Software 

Software Support for HDOS 2.0 

* Disk Management Utility Package 

Includes “Universal Dump”, Intelligent Disk Dump Utility; “Universal Dup”, Disk Copy Utility; and “BAD”, Bad Disk 
Recovery Utility. $39.95 (Source: add $40.00) 

* Archive 

Space saving diskette back-up utility. For use with 5 1 /*" or 8" disk systems. $39.95 (Source: add $40.00) 

* SYSCMD/plus 

A must for the serious HDOS user. Enhanced HDOS 2.0 system command processor provides extended com¬ 
mands and capabilities. $39.95 (Source: add $30.00) 

* Preload 

Support utility for systems using multiple, bank selectable memory boards. $29.95 (Source: add $20.00) 

* Advanced H17/H77 Driver 

Software driver for operation of double-sided and/or double-track double density drives with the H-17 and H-77 5VV' 
disk systems. Low cost alternative to high priced double density disk controllers. $19.95 (Source included). 


Heath®, H8\ H17®, and H89 ? are registered trademarks of Heath Corporation, Benton Harbor, Michigan. 
Z80® is the registered trademark of Zilog Corporation AMD9511 is a trademark of Advanced Micro Devices. 




Computer Support 
jture Built-In 


NEW SUPER 89 

TURN YOUR H/Z-89 INTO A PROFESSIONAL QUALITY COMPUTER 

HIGHER RELIABILITY NOW — MORE EXPANDABILITY FOR THE FUTURE 

FEATURES 

DG-SCJPER 89 

H/Z 89 

USER MEMORY 

The DG Super 89 comes standard with 64K of user RAM 
“on-board”. This configuration can be increased up to 256K of bank 
selectable RAM. 

64K-256K 

16K-64K 

0 ORIGIN MODIFICATION 

No further modification, such as required on the H/Z-89, is 
necessary to operate in either a standard Heath/Zenith CP/M or 

HDOS 2.0 Operating System environment. 

NOT NECESSARY 

ADD-ON 

CP/M-HDOS COMPATIBLE 

YES 

REQUIRES 

MODIFICATION 

PERIPHERAL EXPANSION SLOTS 

DG Electronics has made provision in the design of the unit not only 
for compatibility with the standard factory expansion slots, but also 
for future expansion by doubling the number of available expansion 
slots on the unit to 6 instead of the standard 3. 

6 

3 

ON-BOARD AMD9511 

For those users who perform large amounts of arithmetic 
computations the DG Super 89 has provision on-board for use of 
the AMD 9511 arithmetic processor. 

YES 

(PURCHASE 

SEPARATELY) 

NO 

CPU CLOCK FREQ. 

The CPCJ in the DG Super 89 operates at twice the speed of the 
standard H/Z-89. 

4MHz + 

2.048MHz 

MULTI-USER CAPABILITY 

With up to 256K of bank selectable RAM on board the DG Super 89 
offers the option of MULTI-USER CONFIGURATIONS of up to 4 
users. 

YES 

NO 

ENHANCED MONITOR 

DG Electronics has developed its own firmware monitor to allow the 
user greater flexibility and easier access to the advanced capabilities 
of the Z80 CPU. 

YES 

NO 

REAL TIME CLOCK 

The DG Super 89 comes standard with an on-board real time clock. 

YES 

NO 

PARITY CHECK ON RAM 

For those who are sticklers for accuracy, the DG Super 89 has parity 
check to make the user aware of errors occuring in the RAM during 
use. 

YES 

NO 

SERIAL PORTS ON BOARD 

The DG Super 89 offers an additional serial I/O port for greater 
convenience and flexibility. 

2 

1 

Now you can have all of the features in your H/Z-89 that you have always wanted. High speed and greater expandability are 
only the beginning of what our NEW DG SUPER 89 has to offer. DG Electronic Developments Co. has given the “89” 
capabilities of fast number crunching and data verification through parity. We have incorporated into the DG SUPER 89 
such necessary items as 64K of user RAM, a powerful Keyboard monitor, and CP/M compatibility, items others require you 
to “add-on”. Add to these features an extra serial port, a realtime clock, three more peripheral expansion slots, and 
multi-user capability and you have the computer that you really wanted to begin with; tor a lot less than you would think. 

Compatible with all currently available Heath/Zenith hardware devices. 

« ELECTRONIC 

LJ'I9 DEVELOPMENTS CD. 

Ordering Information: Products listed available from DG 
Electronic Developments Co.. 700 South Armstrong. 
Denison, Tx. 75020. Check, Money Order, VISA or 
MasterCard accepted. Phone orders (charge only) call (214) 
465-7805. Freight prepaid. Allow 3 weeks for personal checks 
to clear. Texas residents add 5%. Foreign orders add 30%. 
Prices subject to change without notice. 


CIRCLE #129 ON READER SERVICE CARD 


















play according to 

Steer Kleer 


Jioijle & Jioule 


This is an easy to understand and easy to play 
manual dexterity game for players of all ages. You 
can easily show a four year old how to work the con¬ 
trols and what the object of the game is. Then at 
slow speeds on the easiest maze, many four year 
olds will be able to get entirely through the game, 
and more importantly, they will be playing with their 
parent’s computer. 

The second maze is a real challenge to any adult 
even at slow speeds. At the higher speeds, you 
might play for weeks and never win. But once you 
play a few times, the hope of winning will loom 
above you and there will be no quitting. 

Eight to twelve year olds can begin to help pro¬ 
gram by writing their own mazes on graph paper 
and having their parents type in the maze for them. 
Then they can have the thrill of playing their very 
own maze. Of course, the adults can participate in 
this activity also. 

Finally, if you are wanting to learn assembly lan¬ 
guage programming, this program can be your 
start. As a matter of fact, you must assemble two of 
the mazes provided, before you can play them. De¬ 
tailed instructions on how to do this are on the game 
disk. The source code for STEER KLEER is pro¬ 
vided. It is very well documented, and intended for 
beginners. Study the code and you’ll be surprised 
how easy it is to understand the program. You can 
start programming by changing some of the code to 
suit your own needs. 

Four Obstacle Courses $14.00 
Needs H8, HI 7 & HI 9 or H89 and 
any version of HDOSand 16K 


A Remarkable 
Experience 

Needs Heath H8 or H89 and any 
version HDOS and 32K 



STATE TODAY’S PASSWORD 
(one of many obstacles) 

107 locations and 16 treasures in 
machine language 


For Brave Explorers $16.00 


Complete Map Sets 
$10 per game 


Excerpt from ‘A Remarkable Experience’ 

You are standing on a small grassy knoll in the 
midst of a dense forest. Two obvious paths lead 
East and North. A rushing stream can be heard in 
the distance. 

7NORTH 

You are standing at the base of a wide oak tree. A 
path leading West and a stream leading South be¬ 
gin here. The low branches make this tree appear 
inviting to climb. 

7CLIMBTREE 

Effortlessly, you ascend the oak tree and pause, 
standing on the first big branch. 

To the East, in the distance, a small hut can be 
seen. 

7CLIMBTREE 

Which way? 

7CLIMB UP 

You are sitting in a natural ‘v’ formed by two 
branches in the top of the wide oak tree. To the East, 
the small hut can be seen, easily. 

Burned into a nearby branch is a clue: 

7READCLUE 

First Password— 

“Einstein was a very _ 

scientist, but not us.” 

7SEARCH 

You have discovered a ring of keys hanging on a 
nail halfway around the tree. 

7GETKEYS 

The tree is too big around and you can’t reach 
them. 


with graphics 

Needs H8, HI 7 & HI9 or H89 
and any version of HDOS and32K 



For Remarkable Explorers $25 

Hoyle & Hoyle Software 

716 S. Elam Ave., Greensboro, NC 27403 
Bank Cards, COD: (919) 378-1050 


Excerpt from ‘A Galactic Experience’ 

You are in the communications center of Earth’s spaceport. The 
room is circular in shape and doors leave the room like spokes on a 
wheel. 

The lieutenant on duty says, ‘Captain, your departure is all set for 
0800 hours tomorrow morning. Have you decided on your course vec¬ 
tors?’ 

A clock on the wall reads 1620 hours. 

7EAST 

You are in a foyer leading to the wing of private quarters. This room 
contains lots of comfortable sofas and chairs. 

A sign above the entrance reads: 

Through these portals pass the elite of the space adventurers. Feel 
free to connect up to the computer using the entrance code PUBLIC 
and the password SECRET. 

A clock on the wall reads 1640 hours 

There is a computer CRT terminal here. 

7LOGON COMPUTER 

User Name: 

7PUBLIC 

Password: 

7SECRET 

Welcome to the universal information retrieval service. 

Please remember that all captains should check in with the base 
commander three hours before liftoff. 

Information available on: 

1) Planet Locations 

2) Ship Personnel seeking employment 

3) General Gossip 


Marvelous Experiences 

CIRCLE #121 ON READER SERVICE CARD 


42 Sextant Spring, 1982 










































Rubik’s Cube: 

A Computer Simulation 

in Microsoft BASIC 

—Arthur A. Frost— 


The cube invented by Erno Rubik in 
Hungary a few years ago is now selling 
like wildfire in toy stores across the 
United States. It has been the subject of 
newspaper and magazine articles all the 
way from the Wall Street Journal to the 
Readers Digest. A most interesting de¬ 
tailed description and discussion by 
Douglas R. Hofstadter appeared in the 
March 1981 issue of Scientific American. 

On each of the cube’s six faces, there 
appear the faces of nine smaller cubes 
called “cubies”. The cube is cleverly 
constructed so that each cube face can 
be turned clockwise or counterclock¬ 
wise. The original, or pristine, cube 
having a separate color on each of the 
faces, after one or more turns of cube 
faces, the colors will now be mixed up to 
form a varied pattern. The aim of the 
puzzle is to return the cube to its original 
form. If the original cube has been 
subjected to four or more random turns 
it is surprisingly difficult for a neophyte 
to solve the puzzle. It is also of interest to 
investigate various unusual or attractive 
patterns that can be produced by a 
series of cube operations. 

Putting Rubik’s Cube on computer 

Why would one wish to simulate the 
cube on a computer? With the real cube, 
a beginner will easily arrive at a con¬ 
figuration which is so disordered that he 
may give up the struggle. With the 
computer, and using a program such as 
the one presented here, it is possible to 
begin afresh and try many different 
cube operation combinations. Of course, 
one can also carry out operations much 
more rapidly than by handling the cube. 

In order to show cube operation 
results on a video terminal, one needs a 
presentation of all faces of the cube. The 
most obvious solution to this problem is 
to think of cutting the edges of the cube, 
as if it were made of paper, and folding 
out the top, bottom, and the two sides. 
Suppose the back face is folded out 
while attached to the right side. The 
result are diagrams such as are shown in 
Illustrations 1 to 3. In these diagrams, 
the six colors of the pristine cube are 
identified by the numbers 1 through 6 
for Red, Blue, White, Green, Yellow, 
and Orange, respectively. Illustration 1 
shows the pristine cube where each face 
has nine identical letters. Illustration 2 


shows the result after the right face has 
been rotated by 90 degrees clockwise. 
Notice that the right face proper is 
unchanged with its color “4” but that the 


edges of the right face as they appear on 
the sides of the front, top, back and 
bottom have all been shifted around, the 
“3’s” from the front are now on the top, 



1 

1 

1 





1 

1 

1 





1 

1 

UP 

1 

CUBE 

COLORS 



2 2 2 

3 

3 

3 4 4 4 

5 

5 

5 

2 2 2 

3 

3 

3 4 4 4 

5 

5 

5 

2 2 2 

LEFT 

3 

3 

FRONT 

3 4 4 4 

RIGHT 

5 

5 

BACK 

5 


6 

6 

6 





6 

6 

6 




ENTER OPERATION 

? 

6 

( ' 2 ' 

6 6 

DOWN 

for repeat of instructions.) 




Illustration 1 : Cube in 

pristine form. Numbers identify colors. 





1 

1 

3 





1 

1 

3 





1 

1 

UP 

3 

CUBE 

COLORS 



2 2 2 

3 

3 

6 4 4 4 

1 

5 

5 

2 2 2 

3 

3 

6 4 4 4 

1 

5 

5 

2 2 2 

LEFT 

3 

3 

FRONT 

6 4 4 4 

RIGHT 

1 

5 

BACK 

5 


6 

6 

5 





6 

6 

5 




ENTER OPERATION 

7 

6 

( 1 2 1 

6 5 

DOWN 

for repeat of instructions. 

) 



Illustration 2: Cube after operation R+ for clockwise rotation of right face. 




Sextant Spring 1982 43 






F+B-U+D-R+L 

-F+B- 






3 

3 

3 




3 

1 

3 




3 

3 

UP 

3 

CUBE COLORS 


6 6 6 

4 

4 

4 111 

2 2 

2 

6 2 6 

4 

3 

4 14 1 

2 5 

2 

6 6 6 

LEFT 

4 

4 

FRONT 

4 111 

RIGHT 

2 2 

BACK 

2 


5 

5 

5 




5 

6 

5 



ENTER OPERATION 

? 

5 

('2' 

5 5 

DOWN 

for repeat of instructions.) 



Illustration 3: Cube after combined operation: F+B — U+D — R+L — F+B —. 




the “l’s” of the top have shifted to the 
back, etc. 

The program used 

The letters used to indicate the various 
cube operations, are defined in the 
listing of the computer program. Clock¬ 
wise quarter turns are indicated by F+, 
FT, L+, B+, LH-, and DT for the 
corresponding face. (U, up, designates 
the top and D, down, the bottom. Be 
careful not to use B for bottom.) A minus 
is used to indicate the counter¬ 
clockwise operation. The program is 
such that a combination of many opera¬ 
tions can be entered at one time. See 
line 730 and the operation symbol PP$. 
Illustration 3 is the result of such a 
combined operation: namely, f+b-u+d- 
R+L-F+B-. (Note that in entering such 


MLM ASSOCIATES PRESENTS 

MLM MORSE - Morse program 
for. SWL's and Amateurs. 
No internal connections. 
$29.95 or $99.95 with 
MFJ-1200. 

ARCHIVE - Store, extract, 
delete, update groups of 
files. Source code’ in 
Ratfor provided. $19*95- 

AtlTOSEUD - Instruction in 
Morse code by computer. 
MBASIC. H-89 users need 
tone generator. $14*95- 

HEATH 19-ACM & .MAC - Use 
mnemonics to control H-19 
in ASM or MACRO 80. With 
reference card. $9*95* 

5621 Maple Heights Court 
Pittsburgh PA 15252 

CIRCLE #126 ON READER SERVICE CARD 
44 Sextant Spring 1982 


K 


3 3 | 4 4 


3 I 4 

5 3|4 4 



Illustration 4: Perspective view corresponding 
to Illustration 1. 


data each letter must be followed by 
either a plus or a minus.) The pattern in 
Illustration 3 is equivalent to what is 
called “Dots” by Hofstadter. 

Many interesting mathematical fea¬ 
tures of the cube as discussed by 
Hofstadter can be investigated quickly 
using the program. For example, con¬ 
sider the operation pair R+C7+. Such 
operation naturally will mix up the faces 
and edges of the right and upper faces. 
If this operation pair is repeated seven 
times, the edge cubies return to their 
initial positions and orientations. To do 
the same with the corner cubies takes 
fifteen combined operations. It is appar- 



Illustration 5: View corresponding to 
Illustration 2. 


ent that if the operations are carried out 
seven times fifteen, or 105 times, the 
cube will return to its pristine form. 
Whereas to do such 105 combined 
operations by hand is obviously very 
tedious, it is easily accomplished on the 
computer. The program is such that 
after typing an operation such as r+u+, 
one need only press the return key 105 
times. An easier way is to type r+u+ 
R+u+fl+u+fl+u+R+u+fl+u+R+u+ and 
press the return fifteen times. 

As the program is written, by the way, 
the designation of numbers for the 
colors is on lines 140 and 150. You may 
prefer to use letters instead, or graphics 
features. If so, you need only substitute 
your desired designation for the numbers 
in the quotes. This will also enable you to 
change the cube’s orientation if, for 
instance, you think Red should really be 
in front instead of White. 

Three control operations are defined. 
When an operation is requested (line 
730) entering a “0” will return the cube 
to the initial condition, like “solving” the 
puzzle instantly. Entering a “1” has the 
efffect of providing a more realistic 
perspective diagram of the cube after 
any arbitrary set of operations. Examples 
of such diagrams are shown in Illustra¬ 
tions 4, 5, and 6 which correspond to 
Illustrations 1, 2, and 3, respectively. 
Each such diagram can show only the 
one orientation with the front, upper 
and right faces visible. No attempt was 
made to program the view from other 
directions. Entering a “2” causes a restart 
of the program so that the instructions 
can be reviewed at any time. 

The program is written in Microsoft 
BASIC as implemented for the HDOS 
operating system on a Heathkit H8 
computer with 40K memory, an HI9 
terminal and HI7 disk drive. The pro¬ 
gram can probably operate with a 32K 
memory after trimming out some of the 
instruction print statements. H19/H89 
graphics symbols have been used to 
produce the perspective diagram. 

A similar cube simulation program 
has been published by J. W. Pehousek in 
Dr. Dobb s Journal. 

References: 

Wall Street Journal, March 5, 1981 
Reader s Digest, May 1981 
Scientific American, March 1981 
Time, March 23, 1981 
Dr. Dobb’s Journal, July 1981 



Illustration 6: View corresponding to 
Illustration 3. 












10 ' CUBE PROGRAM - SIMULATES RUBIK'S CUBE 

20 ' BY A.A.FROST, 195 EAGLE LN., RR#4, SEDONA, AZ 86336 

30 ’ MODIFICATION USING H19/H89 GRAPHICS. 

40 CLEAR 200 

50 DEFINT A-Z: DIM C$(6,3,3) 

60 ' DEFINE GRAPHIC CHARACTERS AND COMBINATIONS 
70 CS$=CHR$(27)+"E" ' CLEAR SCREEN ESCAPE CODE 

80 F$=CHR$ (27) + "F" : G$=CHR$ (27)+"G" : CH$=F$ + "'• "+G$ 

90 Zl$=F$+"("+G$: Z2$=F$+"a"+G$: Z3$=F$+"z"+G$ 


100 XU$=Zl$+" "+Z2$+" "+Z3$: XD$=Z3$+" "+Z2$+" "+Zl$ 

110 T$=" " ' 10 SPACES 

120 ' DEFINE COLORS 
130 DIM CL$(6) 

140 CL$(1)=" 1":CL$(2)=" 2”:CL$(3)=" 3" 

150 CL$(4)=" 4":CL$(5)=" 5":CL$(6)=" 6" 

160 PRINT CS$ ' CLEAR SCREEN 

170 PRINT TAB(25)"RUBIK'S CUBE":PRINT 

180 PRINT T$"This program simulates the rotations of the faces" 

190 PRINTsPRINT T$"of the cube. It begins with the pristine or" 

200 PRINT:PRINT T$"unscrambled cube. One can produce various" 

210 PRINT:PRINT T$"patterns by carrying out several cube operations." 
220 PRINT:PRINT T$"Or one can try 'solving' the cube after it has" 

230 PRINT:PRINT T$"been scrambled by another person.":PRINT 


240 

250 

260 

270 

280 


PRINT 
PRINT 
PRINT 
PRINT 
PRINT 
290 PRINT 
300 PRINT 
310 PRINT 


:PRINT T$"The cube faces have colors indicated by the numbers:" 

:PRINT T$"1 for red, 2 for blue, 3 for white, 4 for green," 

:PRINT T$"5 for yellow, and 6 for orange." 

:PRINT TAB(40)"To continue, press ’RETURN'.":Z$=INPUT$(1) 

CS$ 

" CUBE FACE OPERATIONS" 

iPRINT T$"The operations corresponding to the various possible" 

:PRINT T$"cube face rotations are defined as follows:" 

rotate the front face 90 degrees" 
clockwise and counterclockwise." 
rotate the back face." 
rotate the right face." 
rotate the left face." 
rotate the upper face." 

rotate the down, or bottom face.":PRINT 


400 PRINT CS$ ' CLEAR SCREEN 

410 PRINT:PRINT " ENTERING OPERATIONS":PRINT:PRINT 

420 PRINT:PRINT T$"When 'OPERATION' is requested by the computer just type in" 
430 PRINT:PRINT T$"any of the above operations, say F+, and press 'RETURN'." 
440 PRINT:PRINT T$"Also if you wish to carry out two or more operations before 
450 PRINT:PRINT T$"seeing the result just type in the successive operations on 
460 PRINT:PRINT T$"the same line, e.g. R+L- will rotate right and left faces" 
470 PRINT:PRINT T$"together. A whole line of operations can be input at once" 
480 PRINT:PRINT T$"if desired but the computing time will be considerable." 

490 PRINT:PRINT:PRINT TAB(40)"To continue press 'RETURN'.":Z$=INPUT$(1) 

500 PRINT CS$:PRINT:PRINT 

510 PRINT:PRINT T$"Once an operation or series of operations has been entered" 
520 PRINT:PRINT T$"it can be repeated just by pressing 'RETURN' since the" 

530 PRINT:PRINT T$"last entry is still stored in memory." 

540 PRINT:PRINT 


320 

PRINT:PRINT 

T$ " 

F+ 

and 

F- 

330 

PRINT:PRINT 

T$ " 




340 

PRINT:PRINT 

T$ " 

B+ 

and 

B- 

350 

PRINT:PRINT 

T$ " 

R+ 

and 

R- 

360 

PRINT:PRINT 

T$ " 

L+ 

and 

L- 

370 

PRINT:PRINT 

T$ " 

U+ 

and 

U- 

380 

PRINT:PRINT 

T$ " 

D+ 

and 

D- 

390 

PRINT:PRINT 

TAB(40) 

"To 

contini 


550 PRINT:PRINT T$"Since capital letters are required, it would help to have" 
560 PRINT:PRINT T$"the 'CAPS LOCK' key down.":PRINT 

570 PRINT TAB(40)"To continue press 'RETURN'":Z$=INPUT$(1):PRINT CS$ 


II 

II 


Sextant Spring 1982 45 


580 PRINT " SPECIAL CONTROL OPERATIONS":PRINT 

590 PRINT:PRINT T$"When 'OPERATION' is requested:" 

600 PRINT:PRINT T$" Entering 'O' produces the pristine cube." 

610 PRINT:PRINT T$" Entering '1' produces a perspective diagram for the" 

620 PRINT:PRINT T$" current state of the cube." 

630 PRINT:PRINT T$" Entering '2' restarts the program at the instructions." 
640 PRINT:PRINT:PRINT 


650 PRINT " NOW HERE WE GO! You will now see a diagram for the cube in a" 

660 PRINT:PRINT T$"folded-out view. Just press 'RETURN'" 

670 Z$=INPUT$(1) ' WAITS FOR A KEY TO BE PRESSED 

680 ' SET FACE 'COLORS' AS LETTERS. PRINT DIAGRAM 
690 FOR 1=1 TO 6:FOR J=1 TO 3:FOR K=1 TO 3 
700 C$(I,J,K)=CL$(I): NEXT K: NEXT J: NEXT I 
710 GOTO 1280 

720 PRINT "ENTER OPERATION ('2' for repeat of instructions.) 

730 INPUT " ";PP$: LL=LEN(PP$) 

740 FOR 11=1 TO LL STEP 2: OP$=MID$(PP$,II, 2 ) 


750 

IF 

OP$="F+" 

THEN 

o 

1— 1 
a\ 

760 

IF 

OP$="F-" 

THEN 

960 

770 

IF 

OP$="R+" 

THEN 

970 

780 

IF 

OP$="R-" 

THEN 

1020 

790 

IF 

OP$="U+" 

THEN 

1030 

800 

IF 

OP$="U-" 

THEN 

1080 

810 

IF 

OP$="L+" 

THEN 

1090 

820 

IF 

OP$="L-" 

THEN 

1140 

830 

IF 

OP$="D+" 

THEN 

1150 

840 

IF 

OP$="D-" 

THEN 

1200 

850 

IF 

OP$="B+" 

THEN 

1210 

860 

IF 

OP$="B-" 

THEN 

1260 

870 

IF 

OP$="0" 

THEN 690 

880 

IF 

OP$="l" 1 

THEN 1490 

890 

IF 

OP$="2" 1 

THEN 160 


900 GOTO 720 

910 RESTORE 910: GOSUB 1400: GOTO 1370 
920 ' DATA FOR F AND F' 

930 DATA 3,1,3,3,1,1,3,3,1,3,3,3, 3,1,2,3,2,1,3,3,2,3,2,3 

940 DATA 1,3,3,2,1,3,6,1,1,4,3,1, 1,3,1,2,3,3,6,1,3,4,1,1 

950 DATA 1,3,2,2,2,3,6,1,2,4,2,1 

960 RESTORE 910: GOSUB 1440: GOTO 1370 

970 RESTORE 970: GOSUB 1400: GOTO 1370 

980 ' DATA FOR R AND R' 

990 DATA 4,1,3,4,1,1,4,3,1,4,3,3, 4,1,2,4,2,1,4,3,2,4,2,3 

1000 DATA 1,2,3,3,2,3,6,2,3,5,2,1, 1,1,3,3,1,3,6,1,3,5,3,1 

1010 DATA 1,3,3,3,3,3,6,3,3,5,1,1 

1020 RESTORE 970: GOSUB 1440: GOTO 1370 

1030 RESTORE 1030: GOSUB 1400: GOTO 1370 

1040 ' DATA FOR U AND U' 

1050 DATA 1,1,3,1,1,1,1,3,1,1,3,3, 1,1,2,1,2,1,1,3,2,1,2,3 

1060 DATA 3,1,3,4,1,3,5,1,3,2,1,3, 3,1,1,4,1,1,5,1,1,2,1,1 

1070 DATA 3,1,2,4,1,2,5,1,2,2,1,2 

1080 RESTORE 1030: GOSUB 1440: GOTO 1370 

1090 RESTORE 1090: GOSUB 1400: GOTO 1370 

1100 ' DATA FOR L AND L' 

1110 DATA 2,1,3,2,1,1,2,3,1,2,3,3, 2,1,2,2,2,1,2,3,2,2,2,3 

1120 DATA 1,1,1,5,3,3,6,1,1,3,1,1, 1,3,1,5,1,3,6,3,1,3,3,1 

1130 DATA 1,2,1,5,2,3,6,2,1,3,2,1 

1140 RESTORE 1090: GOSUB 1440: GOTO 1370 

1150 RESTORE 1150: GOSUB 1400: GOTO 1370 

1160 ' DATA FOR D AND D’ 

1170 DATA 6,1,3,6,1,1,6,3,1,6,3,3, 6,1,2,6,2,1,6,3,2,6,2,3 


46 Sextant Spring 1982 


1180 DATA 2,3,1,5,3,1,4,3,1,3,3,1, 2,3,3,5,3,3,4,3,3,3,3,3 

1190 DATA 2,3,2,5,3,2,4,3,2,3,3,2 

1200 RESTORE 1150: GOSUB 1440: GOTO 1370 

1210 RESTORE 1210: GOSUB 1400: GOTO 1370 

1220 ’ DATA FOR B AND B' 

1230 DATA 5,1,3,5,1,1,5,3,1,5,3,3, 5,1,2,5,2,1,5,3,2,5,2,3 

1240 DATA 1,1,1,4,1,3,6,3,3,2,3,1, 1,1,3,4,3,3,6,3,1,2,1,1 

1250 DATA 1,1,2,4,2,3,6,3,2,2,2,1 

1260 RESTORE 1210: GOSUB 1440: GOTO 1370 

1270 ' "COLOR" PRINTING ROUTINE 

1280 PRINT CS$:FOR J=1 TO 3:PRINT TAB(18);:FOR K=1 TO 3:PRINT @ 

C$(1,J,K); 

1290 PRINT SPC(3);:NEXT K:PRINT:IF J<>3 THEN PRINT:NEXT J 
1300 PRINT TAB(23)"UP"TAB(45)"CUBE COLORS" 

1310 FOR J=1 TO 3:PRINT:FOR 1=2 TO 5:FOR K=1 TO 3:PRINT C$(I,J,K); 

1320 PRINT SPC(3);:NEXT K:PRINT SPC(3);:NEXT I:PRINT:NEXT J 
1330 PRINT " LEFT FRONT RIGHT 

"BACK" 

1340 FOR J=1T03:PRINT:PRINT TAB(18);:FOR K=1 TO 3:PRINT C$(6,J,K); 

1350 PRINT SPC(3);:NEXT K:PRINT:NEXT J:PRINT TAB(23)"DOWN" 

1360 IF II>=LL THEN 720 
1370 NEXT II 
1380 GOTO 1270 
1390 END 

1400 ' CLOCKWISE ROTATION 

1410 FOR 1=1 TO 5: READ II,Jl,K1,12,J2,K2,13,J3,K3,14,J4,K4 

1420 CT$=C$(II,J1,K1):C$(I1,J1,K1)=C$(12,J2,K2):C$(12,J2,K2)=C$(I3,J3,K3) 

1430 C$(I3,J3,K3)=C$(I4,J4,K4):C$(I4,J4,K4)=CT$:NEXT I:RETURN 

1440 ’ COUNTERCLOCKWISE ROTATION 

1450 FOR 1=1 TO 5: READ II,Jl,Kl,12,J2,K2,13,J3,K3,14,J4,K4 

1460 CT$=C$(II,J1,K1):C$(11,Jl,Kl)=C$(14,J4,K4):C$(14,J4,K4)=C$(I3,J3,K3) 

1470 C$(I3,J3,K3)=C$(I2,J2,K2):C$(I2,J2,K2)=CT$:NEXT I: RETURN 

1480 ' ROUTINE FOR PERSPECTIVE DIAGRAM 

1490 PRINT CS$: S=20 

1500 PRINT TAB(S+18)Zl$;" ";Z2$;" ";Zl$ 

1510 PRINT TAB(S+13)XU$SPC(5)XD$ 

1520 PRINT TAB(S+8)XU$;SPC(7);C$(1,1,1);SPC(6)XD$ 

1530 PRINT TAB(S+3)XU$SPC(7);C$(1,2,1);SPC(8);C$(1,1,2);SPC(6)XD$ 

1540 PRINT TAB(S)Z2$;" ";Z3$;SPC(7);C$(1,3,1);SPC(8);C$(1,2,2);SPC(8);@ 
C$(1,1,3);SPC(6)Z3$;" ";Z2$ 

1550 PRINT TAB(S)CH$SPC(2)XD$SPC(7);C$(1,3,2);SPC(8);C$(1,2,3);SPC(6)@ 
XU$SPC(2)CH$ 

1560 PRINT TAB(S)CH$SPC(7)XD$SPC(7);C$(1,3,3);SPC(6)XU$SPC(7)CH$ 

1570 PRINT TAB(S)CH$SPC(4);C$(3,1,1);SPC(6)XD$SPC(5);XU$SPC(7);C$ (4,1,3) 
SPC(3)CH$ 

1580 PRINT TAB(S)CH$SPC(9);C$(3,1,2);SPC(6)Z3$;" ";Z2$;" "?Z3$SPC(7);@ 

C$ (4,1,2);SPC(8)CH$ 

1590 PRINT TAB(S)CH$SPC(4);C$(3,2,1);SPC(8);C$(3,1,3);SPC(3)CH$SPC(4) 

C$(4,1,1);SPC(8);C$(4,2,3);SPC(3)CH$ 

1600 PRINT TAB(S)CH$SPC(9);C$(3,2,2);SPC(8)CH$SPC(9);C$(4,2,2);SPC(8)CH$ 
1610 PRINT TAB(S)CH$SPC(4);C$(3,3,1);SPC(8);C$(3,2,3);SPC(3)CH$SPC(4) 

C$(4,2,1);SPC(8);C$(4,3,3);SPC(3)CH$ 

1620 PRINT TAB(S)Z2$;" ";Zl$SPC(7);C$(3,3,2);SPC(8)CH$SPC(9);C$(4,3,2) 
SPC(6)Zl$;" ";Z2$ 

1630 PRINT TAB(S+3)XD$SPC(7);C$(3,3,3);SPC(3)CH$SPC(4);C$(4,3,1) 

SPC(6)XU$ 

1640 PRINT TAB(S+8)XD$SPC(7)CH$SPC(7)XU$ 

1650 PRINT TAB(S+13)XD$SPC(2)CH$SPC(2)XU$ 

1660 PRINT TAB(S+18)Z3$;" ";Z2$;" ";Z3$ 

1670 PRINT: GOTO720 


Sextant Spring 1982 47 


Disk Programming Without HDOS 

— Richard E. Smith— 


Programming your own disk input/output 
(I/O) functions on your H89 or Z89 (or H8/17) 
isn’t hard once you know how. 

Maybe you are a free-lance programmer 
with an application program to sell. Maybe 
you’re a tinkerer and like to do things yourself. 
Or maybe you’re someone like me who just 
happens to have a special situation in which an 
operating system gets in the way. Whatever the 
case, you’re interested in running without an 
operating system, in this case, the Heath Disk 
Operating System (HDOS). If you’ve consulted 
your system manuals, you’ll find lots of infor¬ 
mation about how to talk to the console and 
how to program the line printer and modem 
ports. But you won’t find the information you 
need to use the disk drives without HDOS. 

First, let’s think a moment about what it 
means to run without an operating system such 
as HDOS. The idea is that your own program, 
whatever it does, will be the only program run¬ 
ning in the computer. You will not have the 
operating system’s software to manage your 
computer’s resources. Your own program will 
have to provide whatever needs you have. If 
you want to be able to use the line or char¬ 
acter delete keys to correct something you’ve 
typed in, you have to write your program to do 
it itself. If you want to manipulate files, you 
have to write your own filing routines. For 
many people, this is too much trouble and 
they’ll gladly use an operating system. 

For other people, an operating system may 
just be an unnecessary expense. A programmer 
developing software for non-technical people, 
for example, might want to spare the users from 
the obscurities of such systems. More likely 
though, the programmers would want to lower 
the cost of using their software by not using 
an operating system. This then saves the users 
the cost of having to buy one. An operating 
system’s cost isn’t only measured in money. 
The sheer size of HDOS makes it very expen¬ 
sive to use in terms of disk space, especially 
in single-disk systems. 

If you are thinking about making a program 
run without HDOS, you should consider two 
factors. First, your program has to be written 
in assembly language. Most programs written 
in higher level languages such as BASIC rely 
very heavily on the operating system. Since 
the operating system deals with the computer 


in assembly language, your program will have 
to do the same. 

Second, your program has to have its own 
rules for organizing the data on the diskette 
since you no longer have the operating system’s 
file system. A Forth interpreter is an example 
of such a program: it does not expect a disk to 
have a file system. Database management sys¬ 
tems are another good example: they are sel¬ 
dom organized around HDOS or CP/M file 
structures but instead implement their own. 

Using the diskette drive 

The design of the H17 disk system (and 
thus the H/Z89 disk systems)makes it very sim¬ 
ple to program disk I/O without HDOS. The 
basic I/O routines are provided for you in a 
read-only memory (ROM) that comes as part of 
the disk system. This was a key part of the disk 
system design. Heath was able to keep the 
hardware costs down by providing a very sim¬ 
ple disk controller board and doing most of the 
hard work with software in ROM. The pro¬ 
grams in the ROM take full responsibility for 
the disk head’s stepping in and out locating 
sectors, and for moving data into and out of 
the disk at the right times. Usually, you only 
have to call the proper ROM subroutine if you 
wish to read or write data on the disk. 

Here is a list of locations you’ll be using 
when you use the ROM to accomplish basic 
I/O routines. The addresses are given in 
HDOS split octal format: 


Address 

Name 

Usage 

40133 

D.MOUNT 

Routine for mounting 
a diskette 

40147 

D.READ 

Routine to read sectors 
from diskette 

40155 

D.WRITE 

Routine to write 
sectors on diskette 

40247 

D.VOLPT 

Word pointing to 
current volume 



number 

41061 

AIO.UNI 

Byte selecting desired 
diskette drive 


An interesting note: none of those address¬ 
es are actually in the ROM itself. All of them 
refer to locations in regular memory reserved 
for use by the ROM. These locations are auto¬ 
matically initialized whenever the power 


48 Sextant Spring 1982 



comes on or a “reset” occurs. 

Diskette reading and writing are true ran¬ 
dom-access operations. You must always speci¬ 
fy the desired sector address when reading or 
writing. Sectors are numbered sequentially 
starting with zero for the first sector on the 
outermost track. There are 400 sectors on each 
diskette arranged in 40 tracks of ten sectors 
each. The ROM routines automatically com¬ 
pute the proper track number and sector with¬ 
in the track from the absolute sector number. 

The conventions for calling D.READ and 
D.WRITE subroutines are virtually identical. 
Both take an absolute sector address in the HL 
register pair. This tells where on the disk the 
I/O operation is to start. Both expect a mem¬ 
ory address for an I/O buffer in the DE 
register. Both also expect to find in the BC 
register the number of bytes to transfer during 
the I/O operation. This must always be a mul¬ 
tiple of 256 bytes, or one disk sector. The ROM 
I/O routines will not transfer only part of a 
sector. All I/O operations must take place on 
full sectors. If an error occurs during either 
reading or writing, the subroutine will return 
with the Carry bit set, otherwise the Carry bit 
will be cleared. Here are examples of the call¬ 
ing conventions for D.READ and D.WRITE: 


LXI 

H,sector# 

Point to location 
on the disk 

LXI 

B,length 

Number of bytes to 
transfer 

LXI 

D,address 

Memory location to 
read in to 

CALL 

D.READ 

Call the read routine 

ic 

diskerr 

Jump if I/O error occurs 

LXI 

H,sector# 

Point to location 
on the disk 

LXI 

B,length 

Number of bytes to write 

LXI 

D,address 

Memory location to 
write from 

CALL 

D.WRITE 

Call the write routine 

JC 

diskerr 

Jump if I/O error occurs 


The H17 disk system is designed so that 
the ROM software is always aware of the disk¬ 
ette's volume number. This causes disk oper¬ 
ations to fail if you replace the diskette in the 
drive without telling the software. The secret 
to this is in the formatting of data on the disk¬ 
ettes themselves. As in most disk formats, each 
sector has a “sector header” containing the 
track number and sector number of that sector. 
In the H17 system (and in the Z89/H89 as 
well), this header also contains the diskette's 
8-bit volume number. The disk ROM software 
verifies the volume number every time it veri¬ 
fies the other address information in a sector 
header. 

Use the D.MOUNT routine to tell the disk- 


APOGEE SOFTWARE 

Quality software for Heath/Zenith computers 


UNERASE for CP/M (Heath/Zenith 2.2.02) $14.95 

UNDELETE for IHDOS $14.95 

Recover those files you deleted by mistake. List all 
recoverable files on the disk; display contents of deleted 
file; recover deleted file; even recover intact portions of 
files that have been partially over-written. For use on 5- 
1/4” standard (single density, hard sector) disks only. 


STATPITCH for CP/M (Heath/Zenith 2.2.02) $12.95 

Patches STAT command to display read/write error 
count for 5-1/4” disks. Monitor the performance of your 
drives for maximum efficiency and safety. New STAT 
performs all old command functions; takes up no 
additional disk space. 


MAZERACE for HDOS $12.95 

Graphics maze race game. Reach all the goals in the 
maze while stopping the monsters from invading your 
home base. 3 mazes, 5 levels of difficulty for each. 
Includes screen input utility for making your own mazes. 
Requires H/Z89 or H8-H19. 


Order from: 

Apogee Software 
Box 15124 

Savannah, GA 31406 


Software requires H/Z89 or 
H8-H17, 32k, and specified 
operating system. Add 
$1.50 postage per order. 

Ga. res. add 4% sales tax. 
(CP/M tm Digital Research) 


CIRCLE #122 ON READER SERVICE CARD 


HDOS POWER! 


EDIT19 ($75) is a complete, easy 
to use editor for the H8/H19 or 
H89 (reviewed in BUSS 42). Demo 
disk and 55 page manual, $10. 
Demo price may be applied to a 
purchase made within 90 days. 


SUBMIT ($30) executes any number 
of HDOS commands stored in a 
disk file (includes source). 


TIME ($25) adds time to the HDOS 
2.0 directory. No hardware is 
needed. May be used with a real 
time clock (includes source). 


Use the reader service card, or 
for faster service, send a SASE. 

Steven Robbins 

4610 Spotted Oak Woods 

San Antonio, Texas 78249 


CIRCLE #123 ON READER SERVICE CARD 


Sextant Spring 1982 49 






















only$<>25 each 

For 5 or more 

$4.50 EACH SINGLY 

PRICE INCLUDES SHIPPING 
WITHIN CONT. USA 
Can be used with most any 
adjustable tractor feed printer 
including MX80, H14, TI810, etc. 

Made from MYLAR to withstand continuous use 


the answer to your problem of how to run sinsle 
sheets of your letterhead or a snap-a-part form 
thru a tractor feed printer. . .just insert your form or 
stationery into the PAPER PORTER ™, place in your 
printer, alisn the print head and start printing. . . . 


r 


PAYMENT MUST ACCOMPANY YOUR ORDER 
SEND CHECK, VISA OR MASTER-CARD 



WARE 


miP 

PROGRAMMING AIDS FOR THE MICROCOMPUTER 


By BEELINE SERVICES 

FORMERLY MINIT-MAN PRINTING 

211 E. ALLEGAN STREET 
OTSEGO, MICH. 49078 
(616) 694-6424 


CIRCLE #124 ON READER SERVICE CARD 


ette’s volume number to the ROM. D.MOUNT 
resets the disk drive hardware, initializes a 
few variables, and saves the diskette’s volume 
number. When calling D.MOUNT, the disk¬ 
ette’s 8-bit volume number is passed in the L 
register to the D.MOUNT subroutine. Here is 
an example of the calling sequence: 


MVI L,volume# Volume number of diskette 
CALL D.MOUNT Mount the diskette 

(Never returns an error) 


You can always find the current volume 
number by using an address stored at D.VOLPT 
in the ROM’s work space. This “indirect” ref¬ 
erence is used to simplify things when per¬ 
forming I/O operations with multiple disk 
drives. Here is an example of how to load the 
current drive’s volume number into the A reg¬ 
ister: 

LHLD D.VOLPT Get pointer to volume number 
MOV A,M Get the volume number 

The “Boot” command reads a program from 
the first track of the diskette (called the “boot 
track”) into memory and executes it. This is 
another function that is built into the compu¬ 
ter’s ROM programs. When you turn on the 
power to your computer (or press the Shift/ 
Reset key) the computer initializes its hard¬ 


ware and then jumps to the ROM’s initializa¬ 
tion routine. The ROM then initializes its area 
in regular memory; and, in the H89, prints the 
“H:” prompt. The ROM’s routines will then 
recognize a small set of commands including 
the “Boot” command. 

Before looking at the “Boot” command in 
detail, let us look at the “boot track” for a 
moment. Like any other track on the diskette, 
the boot track contains ten sectors. The first 
nine sectors (numbered 0 through 8) are the 
“boot blocks” and are loaded into memory 
when the “Boot” command is executed. The 
last sector on the track, Sector 9, is the “label 
block” that gets filled in when the volume is 
initialized. The first byte of the label block 
contains the diskette’s volume number. 

Getting the program loaded in 

The “Boot” command reads those first nine 
sectors of the boot track into the computer’s 
user program area (called “USERFWA” in 
HDOS) and then jumps to the beginning of 
this program. This is how your program gets 
loaded in without HDOS and starts running. 
Your program may use the memory stack; the 
ROM sets it up starting at USERFWA before 
executing your program. You may assume that 
all I/O devices have been initialized and that 
the interrupt system is enabled. Booting is very 
simple and convenient if your program fits in 
nine disk sectors (that’s only 2304 bytes). It’s 
a bit harder to boot a larger program and most 
programs are going to be larger. We’ll look at 
how to handle this in a moment. 

If you think for a moment, you might won¬ 
der how the “Boot” command deals with vol¬ 
ume numbers. It turns out that the boot track 
is treated in a special way so that the boot 
track is easy to read. The boot track of a disk¬ 
ette is always initialized with a volume num¬ 
ber of zero. The “Boot” command then only 
needs to set the volume number to zero before 
reading the boot blocks. The booted program 
then has to mount the diskette itself before it 
can access the rest of the diskette. This in¬ 
volves reading the label block, extracting the 
volume number, and passing it to the D.MOUNT 
routine. The label block is the last block on the 
boot track so that the program may read it with¬ 
out having to mount the diskette. 

Listing 1 is an example of how to use some 
of these techniques. Earlier, we had talked 
about how only a small program can fit on the 
boot blocks by itself. If your program doesn’t 
fit on the boot blocks, it has to read in the 
rest of the program from somewhere else on 
the diskette. The code in Listing 1 is meant 
to do this. The code reads the label block, ex¬ 
tracts the diskette volume number, mounts the 


50 Sextant Spring 1982 








diskette, and then reads the rest of the program 
from somewhere on the diskette. 

Consider a few interesting things about this 
code. First, notice that the code needs to know 
where the rest of the program is stored on the 
disk. In this code, the symbol “LSECTOR” 
should represent the number of the starting 
sector where the program is stored on the disk¬ 
ette. Instead of this, you may wish to store it 
in a variable somewhere, perhaps in an unused 
location in the boot blocks. Second, notice that 
the program’s size is rounded upwards to a full 
sector’s size. This is in keeping with the rule 
that all disk I/O operations must transfer full 
sectors. 

A couple of other points: the code in List¬ 


ing 1 halts when it encounters an I/O error. 
There is no reason why you can’t make the 
code do something else if you desire. Also not¬ 
ice how BOOTLEN is used. The above code 
uses the area immediately following the 
booted code as a buffer when reading the label 
block. This is done by referring to the location 
START + BOOTLEN. This location is used 
only because it is convenient. The code then 
loads in the rest of the program starting at that 
location. 

Putting the program onto diskette 

So far we have covered how your program 
can use the diskette drive and how your pro¬ 
gram gets loaded into the computer. Let us 


Diskette mount routine 
Diskette read routine 
Diskette write routine 
Start of program area 
Length of boot blocks 


D.MOUNT EQU 

D.READ EQU 

D.WRITE EQU 

USERFWA EQU 

BOOTLEN EQU 

ORG 

START LXI 

LXI 

LXI 

CALL 

JNC 

HLT 

STRT1 LDA 

MOV 

CALL 

LXI 

LXI 

LXI 

CALL 

JNC 

HLT 

STRT2 


PGMSIZE EQU 


PGMLEN EQU 

ORG 

END 


40133A 
40147A 
40155A 
42200A 
9*256 

USERFWA 

H,9 

D, USERFWA + 
BOOTLEN 
B,256 
D.READ 
STRT1 


USERFWA + 
BOOTLEN 
L,A 

D.MOUNT 
H,LSECTOR 

D,USERFWA + 
BOOTLEN 
B,PGMLEN - 
BOOTLEN 
D.READ 

STRT2 


♦-START 


PGMSIZE/256*256 

START + PGMLEN 
START 


Sector for label 
block 

Point past booted 
program 

Read one sector 

Read the label block 

Halt on error 

Fetch the volume 
number 

Mount the diskette 

Sector with rest 
of pgm 

Where rest of pgm 
goes 

Length of rest 
of program 

Read in rest of 
program 

Halt on error 

Start of your 
program 

End of your program 

Actual length of 
your pgm 

Length in full 
sectors 


Listing 1 


Sextant Spring 1982 51 





Sound Pou/en.! 


nn 

HJ 



HEATH computers sound off with the PSGx4 ! Multi-channel ability and an infinite 
variety of effects under program control. Continues to produce sound after initial 
commands are given - perfect for games, music synthesis, etc. 


12 ANALOG SOUND CHANNELS - 4 ENVELOPE GENERATORS 
4 NOISE SOURCES WITH PROGRAMMABLE PERIOD 
PROGRAMMABLE VOLUME & FREQUENCY (27 Hz - 111 KHz) 
CRYSTAL TIME BASE - ACCURATE MUSIC SCALES 
INCLUDES AUDIO MONITOR AMPLIFIER AND SPEAKER 
64 GENERAL PURPOSE I/O LINES 


Assembled board, instructions, documentation & software . . $ 225 00 



mako data products 

1441 #B N. RED GUM, ANAHEIM, CA 92806 (714) 632-8583 

* H8, H89 and HDOS are registered trademarks of HEATH/ZENITH. CP/M is a registered trademark of Digital Research. 

CIRCLE #107 ON READER SERVICE CARD 


now look at putting the program onto the disk¬ 
ette. 

First, you have to decide where to store the 
part of your program that won’t fit on the boot 
blocks. The right answer to this question de¬ 
pends entirely on what kinds of disk I/O your 
program needs to do. Decide how you want to 
organize your disk space and be sure to set 
aside a block of contiguous space to hold your 
program. Then be sure that the part of your 
program on the boot blocks knows where the 
rest of the program is. Two natural places to 
consider are the sectors immediately following 
the boot track or the sectors right before the 
end of the diskette. 

There are two steps to installing your pro¬ 
gram onto a diskette without HDOS. Be sure 
to start with a formatted diskette. The disk 
system can not read or write data on a disk¬ 
ette that has not been formatted. You must use 
a utility program such as “INIT” in HDOS to 
format the diskette. Once you have a formatted 
diskette, you are ready to start. 

Once you’ve decided where you want to 
store your program on the diskette, you can 
then plan how to get your program there. You 
need to write a program to write your program 
onto the right places on the diskette. This can 
be a “utility” program that you use when de¬ 
veloping your software. A better approach 
might be to make this a part of the software of 
your application system. This will make it 
easier for you to make copies of your system 


without always relying on your development 
system. 

The first step in installing your program is 
to write the first nine sectors of the program 
onto the boot blocks of the diskette. This simp¬ 
ly involves calling the disk write routine after 
setting the volume number to zero. Here is an 
example of this: 


LHLD D.VOLPT 
MOV E,M 
MVI M,0 
PUSH D 


LXI 

LXI 

LXI 

CALL 

JC 


H,0 


Get volume number pointer 
Get volume number 
Set it to zero 
Save the old value 


Write to sector zero 
B,BOOTLEN Length of boot blocks 
D,START From start of program 

D.WRITE Write boot blocks 

wberror Branch if error 


LHLD D.VOLPT 
POP D 
MOV M,E 


Get number pointer again 
Get back the volume number 
Restore its old value 


Now you need to write the rest of the pro¬ 
gram onto the place on the disk you’ve decided 
it should be. Assuming that the symbol 
“LSECTOR” equals the sector number where 
the program should be, here is the code to 
write it there: 

LXI H,LSECTOR Get the sector address 

LXI D,USERFWA Address of rest of program 

+ BOOTLEN 

LXI B,PGMLEN - Length of rest 

BOOTLEN of program 

CALL D.WRITE Write program to disk 
JC bterror Branch if error 


Now that you’ve written your program onto the 
diskette, you can try to boot it using the “Boot” 
command. On the H89, press shift/reset on the 
keyboard and then type “B” followed by a carriage 
return. You will still see the “Type SPACES to 
determine baud rate” message, even though you’re 
not booting HDOS. This is because the message is 
always typed out by the ROM’s “Boot” command 
even if the message isn’t appropriate. You don’t 
really have to type any spaces, so just ignore,ihe 
message. After it types out the message, the “Boot” 
command loads and executes your program from 
the boot blocks. 

So, there you are. As I said in the begin¬ 
ning, programming your own disk I/O func¬ 
tions isn’t hard once you know how. If you 
have a need to run without HDOS, the Heath 
Co. has made it easy with their design of the 
disk systems for the H8, H89, and Z89 micro¬ 
computers. 


52 Sextant Spring 1982 












A Candid Look at Tiny Pascal 


Arnold R. Madeira 


For some time now, it has been com¬ 
mon to find articles on the Pascal 
language in many computer-related 
magazines. My own interest crept into 
focus as more and more of these stories 
paraded by. Possibly, the point was to 
arouse some interest in the people who 
browse through these periodicals. “Can 
this Pascal thing be as great as all these 
guys say it is?” I asked myself; “How 
much of this enthusiasm is pure hype?” 

Eventually, I was moved to take a 
closer look to see what is involved in 
getting into Pascal. I wanted to find out 
for myself what structured program¬ 
ming was all about and how useful the 
while... do... and the repeat... until... 
functions really were. If you are a 
BASIC-bred part-time computer hobby¬ 
ist like me, you haven’t seen these 
constructs before. So you dig out the 
Heathkit catalog to see if they have 
discovered Pascal yet.Marvelous... They 
have it! Your elation continues all the 
way through the catalog listing until you 
come to the place where it says that the 
up-front money required to pursue this 
curiosity is three hundred smackers! 

Unless you have a very compelling 
reason to dabble in Pascal, or you’re a 
little more flush than most of us, three 
hundred dollars is likely to quench your 
budding enthusiasm completely. After 
all, you could invest your hard-earned 
cash in this project, work up a lather for a 
few months, and finally conclude that 
Pascal is not your cup of tea. Now you’re 
out three hundred dollars with very 
little to show for it. 

Well, it turns out that there is an 
alternative. It has been there for some 
time hiding in the Heath Users’ Group 
software listing. I would never have 
noticed it except that somewhere in my 
Heath-related literature someone said 
something nice about it. Upon checking, 
I found that this offering consists of the 
HUG Tiny Pascal for HDOS disk, a 
system which includes a Tiny Pascal 
compiler, a P-code converter, some 
documentation, and a few demonstra¬ 
tion programs. 

Pascal—what it is 

For those of you who may not have 
read up on it yet, Pascal was developed 


in the late 1960s by Professor Nicklaus 
Wirth of the Swiss Technical Institute in 
Zurich, Switzerland. He designed it 
specifically to discourage disorder in 
programs. In the United States, Pascal’s 
principal proponent has been Kenneth 
Bowles. At the University of California 
at San Diego, he was responsible for the 
creation of UCSD Pascal, a system 
which featured a compiler that pro¬ 
duced a universal code which he called 
P-code. This code is transportable; that 
is, it can be run on any computer with 
the aid of a relatively simple P-code 
interpreter. The interpreter takes the P- 
code and executes it using Z80 code or 
6502 code or whatever code your 
computer requires. 

In most UCSD systems, the P-code 
converter is a true interpreter: that is, 
the P-code is translated line-by-line 
each time it is run, the same as BASIC 
does but faster. Unlike UCSD Pascal, the 
HDOS Tiny Pascal converter produces 
machine code (ABS) files which run 
even more rapidly than interpreted P- 
code. Because of its speed, Pascal is 
really great for writing real-time control 
programs. 

A full evaluation of the differences 
and similarities between BASIC and 
Pascal would require a separate article, 
but these are some of the principal 
points. The most noticeable difference 
is that the interactive character of the 
BASIC interpreter is absent in Pascal. 
For instance, you cannot easily go to any 
point in a program and ask for the 
current contents of a variable. Instead, 
you have to add debugging write state¬ 
ments in key places to find out what’s 
happening. Another interesting differ¬ 
ence is that Pascal differentiates 
between “is equal to” (=) and “is 
replaced by” (:=) while BASIC uses the 
equal sign for both. 

Of course, Pascal is not line number 
oriented as is BASIC. That will seem a 
little strange at first if you’ve never used 
any language but BASIC. But there are 
many more similarities than differences. 
Although many commands use different 
words and punctuation to do the same 
things, the intent is most often obvious 
on inspection. For instance, few people 
will have difficulty seeing that Pascal’s 


writeln command is similar to BASIC’s 
print instruction. Pascal’s if statement is 
very much like the BASIC counterpart. 
Pascal uses readln instead of input but 
that, too, is not hard to grasp. 

The arithmetic operators are the 
same in both languages and mathemat¬ 
ical expressions are handled similarly in 
BASIC and Pascal. The for... next loop in 
BASIC becomes a for loop without the 
next in Pascal. BASIC’s on... goto... con¬ 
struct is similar to Pascal’s case...of... 
statement. Pascal has two statements, 
while... do... and repeat... UNTiL...which 
have no direct equivalent in BASIC, but 
much the same thing can be accom¬ 
plished with for... next loops in BASIC. 

If you plan to get involved with 
Pascal, you’ll need to get some reading 
material. Pascal literature is plentiful so 
you shouldn’t have much trouble find¬ 
ing some. If you (or your employer) have 
access to older copies of Electronic 
Design magazine, there is a fine series of 
articles on Pascal written by Tim Krouse 
beginning in the September 13, 1978 
issue and continuing for six installments. 
In addition, I have found Pascal Primer 
by David Fox and Mitchell Waite to be 
most readable, informative, and useful. 
On everyone’s recommended list, 
Pascal Users Manual and Report by 
Kathleen Jensen and Nicklaus Wirth 
appears to be the subject’s “bible”. 

Pascal versus BASIC 

Wirth knew that the first language 
programmers learn leaves an indelible 
imprint on them in terms of the thinking 
patterns they will habitually use to solve 
programming problems. He hoped that 
by starting student programmers on 
Pascal, they would be induced to 
develop good code-writing practices 
which would tend to influence them 
even when they moved on to some less 
rigorous language (BASIC, for instance). 
For the rest of us sloppy code-hackers, 
going backwards from BASIC to Pascal 
is a bit tougher. We already have our bad 
habits, and dumping them is not likely to 
be easy. 

If I sound like I’m bad-mouthing 
BASIC, I don’t mean to be. There are 
some who have made BASIC out to be a 
programming language so riddled with 


Sextant Spring 1982 53 






faults that it doesn’t deserve to exist In 
my opinion, BASIC’s success speaks for 
itself. There are inherent advantages to 
an interactive interpreter language 
which are very helpful to the beginning 
or part-time programmer. Furthermore, 
the best BASICs today deliver a lot of 
programming power with such features 
as a full complement of mathematical 
functions, cursor control, screen control, 
integrated editing, and data file 
handling. 

If I were to make any complaints 
about BASIC, they would be these. First, 
no two BASICs are alike. The non¬ 
transportability of BASIC is not only a 
problem for the software which will only 
run on the machine on which it was 
written. It is also a problem for the 
programmers who finds themselves get¬ 
ting tripped up on an endless variety of 
punctuation syntax requirements and 
different names for the same command. 

Second, the flexibility of BASIC is so 
great as to almost become a detriment. 
Since there are so many ways to do 
almost anything in BASIC, there is no 
compelling need to develop good 
programming habits. While this may be 
considered a fault of the programmer 
rather than of the language, I believe 
that a language can encourage good 
structure if it is deliberately designed to 
do so. 

I haven’t found my own structured 
programming skills growing like crab- 


grass in my first Pascal attempts. It will 
obviously take some willful and con¬ 
tinued effort to unlearn the poor coding 
habits many of us have developed. In 
spite of that, Pascal basics are not all that 
hard to learn. After writing a few very 
short test programs to see if some of 
these new commands did what they 
were supposed to, I decided to dive 
right in and try to re-write one of my 
existing BASIC game programs into 
Pascal. The program I chose was the 
game of Nim. 

Pascal versus Tiny Pascal 

I picked the game of Nim for two 
reasons. First, it was one of the shortest 
programs I had in BASIC. Second, it did 
not require the use of decimals; one of 
Tiny Pascal’s limitations is that it can not 
handle decimals. 

Tiny Pascal is tiny, of course, because 
it lacks several of the built-in features of 
regular Pascal. It does even less when 
compared to UCSD Pascal to which a 
number of goodies have been added. I 
have found that trying to operate within 
some of these limitations is a real chal¬ 
lenge at times. 

I don’t know what all the differences 
are between UCSD Pascal and Tiny 
Pascal. As you can guess, this inexpen¬ 
sive package does not come with 
volumes of documentation. But these 
are some of the differences I have 
found. Lower case characters are not 


Good Luck 

to Charlie and the crew of Sextant 


May your publication be of great value to the 
users of Heath and Zenith computers and 
related peripheral devices. 


The Heath Users’ Group 

Hilltop Road 
St. Joseph, Ml 49085 


permitted in procedure names. Decimal 
numbers are not permitted, only 
integers. The writeln command is 
absent. This command is similar to 
BASIC’s print command. Tiny Pascal 
uses only the write command in which 
you must supply your own line feeds and 
carriage returns. 

Mathematically, there is no integral 
random number function, no modulus 
function, and no ordinal function. I have 
not found any way for a running pro¬ 
gram to call and run another program. 
On the other hand, some HDOS func¬ 
tions have been included such as pause, 
concl, and all the console input mode 
commands. All in all, it’s a lot of pro¬ 
gramming power for the money. 

So decimals and most decimal arith¬ 
metic are out. In a few situations you can 
‘cheat’ by multiplying inputs by powers 
of ten high enough to make the re¬ 
mainder discardable, doing the arith¬ 
metic with the scaled-up numbers, then 
dividing back down. 

Another limitation is in variable types. 
Only integer variables may be declared 
in the program. When you read through 
all the fine print, however, you learn that 
these “integer” variables can be doctor¬ 
ed to behave like string variables when 
required. Boolean variables (True/ 
False) are also not admissible but can 
usually be replaced by integer flags. 

As I noted, Tiny Pascal does not have 
an integral random number generator 
function. Since Nim requires random 
number generation, this caused a fair 
amount of head-scratching until I finally 
remembered that one of the demonstra¬ 
tion programs that comes with HDOS 
Tiny Pascal is a random number genera¬ 
tor. Problem solved! 

The game of Nim 

For those of you who may not be 
familiar with the game of Nim, it is an 
ancient game of numbers wherein the 
players take turns removing objects 
from a pile. In this program, the objects 
are identified as pebbles. The player 
who draws the last pebble from the pile 
loses. (In some versions of the game, 
there is more than one pile.) The begin¬ 
ning size of the pile and the maximum 
quantity that can be drawn in any one 
move are randomly selected for each 
game. 

Nim has been a computer hobbyist’s 
favorite because of its mathematical 
basis which is simple without being 
obvious. It can be shown that there is an 
ideal quantity of pebbles which should 
be left in the pile after each move in 
order to win. This quantity can be 
expressed as 

P = K(M -F 1) + 1 

where P is the ideal pile quantity and M 
is the maximum draw quantity. K will be 
the largest integer which will result in a 
P not larger than the existing pile size. 
This can be used to determine the ideal 


54 Sextant Spring 1982 







draw with the expression 

D= (N- 1) - K(M +1) 
where D is the ideal draw and N is the 
present pile quantity. (The program 
version of this expression may be found 
in the listing at the third line after the 
begin statement in the computermove 
procedure.) 

It is the nature of this game’s 
mathematics that while either player is 
in the driver’s seat (that is, has just made 
an optimum move), the other player is 
excluded from making an optimum 
move. In other words, once a winning 
strategy is in process, it cannot be 
terminated by the opponent. The only 
way to break the winning run is for the 
winning player to make a mistake. A 
great game if you know the math and 
your opponent doesn’t. 

Writing the Nim program in Pascal 

What I like about Pascal is the 


modular structure. Each routine is writ¬ 
ten into an independent module called a 
procedure. I found, to my delight, that as 
each procedure was written, I was able 
to run it and debug it. This meant that 
when the programming was finished, a 
large part of the debugging was done 
too. 

I looked over the BASIC version of 
the game to determine what routines 
should be made into procedures. This 
required taking some notes and doing 
some figuring on a scratch pad for a 
while. Then I started writing the 
program. 

A few changes were made as writing 
and debugging progressed, but the 
program finally ended up with six 
procedures. Those plus the random 
function and the “main program’’ make 
up the entire listing. 

As you can see from the listing, the 
“main program” is relatively short. 


That’s another nice thing about Pascal. 
If you want a quick look at what a Pascal 
program is about, go to the end and read 
the main program. It is most often short 
and usually consists mostly of calls to 
procedures. Since procedure (and 
variable) names are not limited to a 
couple of letters as in many BASIC 
interpreters, the names can be made 
meaningful. 

The first procedure is called opening 
and writes out the title and instructions 
to the screen. If you’re wondering why 
the reverse-video space areas are 
broken up into short clusters, so am I! It 
shouldn’t happen, but I haven’t yet 
found anyone who could explain why 
you can’t program fifteen consecutive 
reverse video spaces in a write state¬ 
ment I developed this fix by trial-and- 
error. The concl instruction after the 
read command is used to clear the H89’s 
type-ahead buffer. 



> For a Perpetual Clock/Calendar for the H8 & H89/Z89. 

> For expansion and interface capability for the H8 & H89/Z89. 

Introducing: .... 



The PC-12: Clock/Calendar & 12 port parallel I/O board for the Hfi. 

The PC-fi c l: Clock/Calendar & T port parallel I/O board for the Hfi^/ZflT. 


The PC-12 and PC-89 provides the expansion and interface capability which was 
previously unavailable for Heath computers. The popular 8255A Programmable 
Peripheral Interface (PPI) chips are utilized to provide plug-in connection for a 
multitude of peripheral devices such as voice and music synthesizers, printers and 
plotters, control and data acquisition equipment, etc., all without jeopardizing the 
integrity of the computer system. The perpetual clock/calendar maintains an abolute 
time and date reference without system power applied. Extensive documentation and 
support disk software is included. There has never been a better method of extending 
the capabilities of your computer system. 

Features : Suggested Prices : 


* Assembled, tested and guaranteed. § 

* 9 or 12 bidirectional 8-bit parallel I/O ports. § PC-12 12 port $249.95 

* 100 day auto charging battery backup for clock. § PC-89 9 port $224.95 

* PC-89 resides in the left side of the H89/Z89. § 

* PC-12 is compatible with all boards for the H8. § 


Write for order form and free catalog of Heath/Zenith compatible products. 

Coming soon: Universal BSR System X-IO™ Remote Controller : Model RX-10. 

H8 & H89 are trademarks of HEATH/ZENITH. BSR/System X-10 is a trademark of BSR, Ltd. 


C 



Dealer inquiries invited. 



j environmental control systems 


9319 Willowview Lane • Houston, Texas 77080 • (713) 464-1717 


CIRCLE #125 ON READER SERVICE CARD 


Sextant Spring, 1982 55 




















The two random numbers required 
for this game are developed in the 
initialize procedure. Unlike the ran¬ 
dom number generators you may have 
used, this one generates only the inte¬ 
gers zero through nine. I elected to 
develop the first random number, the 
pile size, by extracting two non-zero 
random numbers and adding a constant 
to their product to keep the lower limit 
above nineteen. The largest product of 
the two integers generated is eighty- 
one; adding nineteen, this produces an 
upper limit of one hundred. This results 
in a pile size of from twenty to one 
hundred, which seemed about right to 
allow both interest and workability. 

The second random number, the 
maximum draw, is developed in essen¬ 
tially the same way except that a repeat... 
until... routine has been added to limit 
the maximum number to fifteen, again, a 
convenient number. Expert program¬ 
mers or mathematicians may know 
better ways to accomplish these ends, 
but until they are heard from, don’t fret; 
this works. The next procedure, header 
is the beginning display for each game 
and should be self-explanatory. 

Note that variables which are de¬ 
clared in a procedure function only in 
that procedure. Variables declared at 
the beginning of the program are global, 
that is, operational throughout the pro¬ 
gram. Even if the same name is used for 
variables declared in two or more 
procedures, Pascal will treat them as 
though they were separate variables, 
each with a unique name. For instance, 
when the variable response is input in 
the win procedure, the content of the 
response variable read earlier in the 
opening procedure is not affected. 

The next procedure, howmany, inputs 
the player’s move and launders it. Tiny 
Pascal imposes a little of its own launder¬ 
ing on you in the form of an error 
message when it detects an alphabetic 
input where it expects a numeric input. 
My laundering procedure uses its own 
error message to indicate invalid entries. 
When a valid entry is detected, the 
remainder of the screen is cleared in 
preparation for the next procedure. 

You’ll find some of my personal 
idiosyncrasies sprinkled about. I like to 
ring bells on game program keyboard 
inputs (in case the player has fallen 
asleep). I don’t like having computers 
spew masses of information at me too 
quickly on the screen.To remedy this, 
you’ll see pause statements in appro¬ 
priate places. Hunting around the 
screen for key information is annoying, 
so I use reverse-video to highlight data I 
consider important. 

The fourth procedure is called 
COMPUTERMOVE. The first two lines do 
the arithmetic to determine the opti¬ 
mum move. If the player has just made 
an optimum move, the computer’s 
optimum move will evaluate to zero. 


When this happens, the computer picks 
a move at random. The random routine 
is like those previously used.The ran¬ 
dom number limits are from one to the 
maximum draw quantity or to the pile 
quantity, whichever is less. After deter¬ 
mining and announcing its move, the 
computer checks to see if the player has 
won and, if so, sets the playerwin flag 
accordingly. 

The last two procedures are called 
win and lose respectively. These are 
used simply to announce the results of 
the preceding game.Both procedures 
also query the player about a replay and 
set the replay flag accordingly. These 
global flag variables which I’ve been 
setting in some of the procedures, but 
taking no other action on, will be used in 
the Main Program to control the order in 
which program statements are executed. 

The main program begins by calling 
the opening procedure. Following that, 
it goes into the primary game loop using 
the repeat...until... function. Nested in 
the primary loop is a secondary loop 
which checks for a win after each round 
of play. When the player declines a 
replay, Tiny Pascal provides a graceful 
exit to HDOS. 

Note that comments are written 
throughout the program. Pascal encour¬ 
ages it. Unlike BASIC, however, the 
comments do not wind up in the operat¬ 
ing program taking up lots of memory. 
The compiler ignores them so your 
executable program contains no space- 
and time-consuming overhead. The 
commentary stays with the source list¬ 
ing to remind you, six months or a year 
from now, what you had in mind when 
you wrote it. 

Is Tiny Pascal for you? 

There is no doubt in my mind that my 
Nim program is subject to much im¬ 
provement. (It was, after all, my first 
attempt in a new language.) My purpose 


in writing it was not to show you what a 
spiffy programmer I am, but rather to 
share with you some of the apprehen¬ 
sions and the fun I have had trying out 
Tiny Pascal. Earlier, when I said Tiny 
Pascal was an alternative to the full¬ 
blown version, I left something out. I 
should have told you it is an inexpensive 
alternative. The up front cost for all this 
fun and education is just $20! If you’re 
becoming interested, join the fun; order 
yourself part number 885-1086 from 
HUG. 

Is Tiny Pascal a programming lan¬ 
guage you can live with? I guess it 
depends a lot on what you want to 
accomplish in the long run. The ease 
with which the Nim program was gener¬ 
ated suggests that HDOS Tiny Pascal is 
powerful enough to satisfy many pro¬ 
gramming needs. On the other hand, if 
you find that Tiny Pascal has just 
whetted your appetite for more and 
bigger things, you may find it to be an 
introduction and a bridge to a full-blown 
Pascal compiler. 

As for me, I’m finding myself edging 
towards the latter group. Tiny Pascal has 
brought me so much enjoyment that I’m 
beginning to think that three hundred 
smackers for HDOS UCSD Pascal isn’t 
really all that bad after all! 


References 

Pascal Users’ Manual and Report 
by Kathleen Jensen and Niklaus Wirth 
Copyright 1974 

Springer-Verlag, New York, NY 
Pascal Primer 

by David Fox and Mitchell Waite 
Copyright 1981 

Howard W. Sams, Indianapolis, IN 

A Practical Introduction to Pascal 
by I.R. Wilson and A.M. Addyman 
Springer-Verlag, New York, NY 


Information for Ordering Pascal 

Tiny Pascal H8/H89 Part Number 885-1086 $20 from HUG 

Purchases of HUG software require HUG membership and 10% shipping charge. 


Heath Users’ Group 

Hilltop Road 

St. Joseph, MI 49085 

U.S. 

Canada and 



Domestic 

Mexico 


International 

Initial Membership Fee 

$18 

$20 

U.S. Funds 

$28 

Renewal 

$15 

$17 

U.S. Funds 

$22 

UCSD P-System with Pascal 




$295 




shipping 

$2.03 to $5.55 


Requires an H8/H19, HI 1A, or H/Z89 system with 48K bytes RAM and two disk 
drives. (HOS-817-3 requires and supports only two hard-sectored 5.25" disk drives.) 
HOS-817-3 (hard-sectored 5.25" disk for H8/H19 and H/Z89) 

HOS-1127-3 (soft-sectored 8" disk for H-11A/H19/H27) 

Heath Company 

Benton Harbor, MI 49022 _ 


56 Sextant Spring 1982 



The Nim program 


(PROGRAM NIM) 


{Arnold R. Madeira 5 
(72 Locust Glen Drive) 
(Cranston, RI @2920) 


VAR PLAYERWIN, COMPUWIN, PILE, 

DRAW, GAME, REPLAY : INTEGER; (global variables) 

FUNG RANDOM; (random number generator) 

CONST 

TICCNT = 8219; !PAM8 CLOCK — USED AS SEED! 

VAR 

DIGIT, RND : INTEGER; 

BEGIN 

RND:=MEM C TICCNT); (get seed) 

IF RNB=@ THEN RND:=1; (prevent possible crash) 

DIGIT:=(RND+7*(RND DIV 10)+7*(RND DIV 1000)) MOD 10; 

RND:=10*(RND DIV 1@@0)+DIGIT; (confusion factor) 

RANDOM:=DIGIT 
END; (RANDOM) 


PROC OPENING; (print title and instructions) 

VAR RESPONSE : INTEGER; 


BEGIN 

WRITE (27, ’E\27,'Y">' ,27, 'p',' V V %27,'q'); 

WRITE (27,'Y#>',27,'p‘,' THE GAME OF \27,'q'>; 

WRITE <27,'Y*>',27,'p',' V V ',27,'q'>; 

WRITE (27, 'Y7.>' ,27, 'p',' ',' NIM ',27,'q'); 

WRITE (27,'Y&>',27,'p',' V V V \27,'q'); 

WRITE (27,' Y+7.',' In this game, the players take turns removing a number'); 
WRITE (' of pebbles', 10, ' from a pile. The object of the game is to get'); 
WRITE (' your opponent to remove ',10, 'the last pebble.'); 

WRITE (27,'Y/7.' j'The initial number of pebbles in the pile will be '); 

WRITE ('selected at random.', 10, 'You may remove any number of pebbles from'); 
WRITE (' one to a maximum also ',10,'selected at random.'); 

WRITE (27,'Y53','press RETURN or ENTER to play- '); 

READ (RESPONSE); 

CONCL; 

END; (OPENING) 


Sextant Spring 1982 57 



PROC INITIALIZE; 


(generate pile and maximum draw quantities) 


VAR A, B, C, D : INTEGER; 

BEGIN 

A;=RANDOM; 

IF A-@ THEN A:=l; 

B:“RANDOM; 

IF B=0 THEN B:=l; 

PILE:=A*BU9; 

C:“RANDOM; 

IF 0=0 THEN C:=i; 

D:“RANDOM; 

IF D=0 THEN D:=1; 

DRAW:=C*D+5; 

REPEAT 

IF DRAW>15 THEN DRAW:“DRAW-10 
UNTIL DRAW<16; 

END; UNITIALIZE} 


(generate pile size factor #1) 

{generate pile size factor #2) 

{develop pile size; from 20 to 81) 
{maximum draw factor #1) 

(maximum draw factor #2) 

(develop max draw; from 5 to 81) 

(restrict entry range to 5-15) 


PROG HEADER; (print game header) 

BEGIN 

WRITE (27, 'E',27,'Y”V ); (clear screen, address cursor) 

WRITE ('In this round, you can take away any number of pebbles '); 

WRITE (27, -'p V from 1 to ' ,DRAW#, '.',27, ’q', 10,10, ' The initial number •') 
WRITE (‘of pebbles in the pile is ' , 27, ' p',PILE#, 27, ' q' >; 

WRITE (1@,10, Remember.... if you remove the last pebble, you LOSE!% 10) 
END; (HEADER) 


PROC HOWMANY; {get player's move) 

VAR PEBBLES, PEBBLEFLAG : INTEGER; 

BEGIN 

REPEAT 

WRITE (27, ■ Y)N',27,'k', 27,' Y) t-'); (address cursor, erase rest of screen) 
WRITE ('How many pebbles are you going to remove? ’,7); (ring bell) 
READ (PEBBLES#); 

CONCL; 

IF (PEBBLES>DRAW) OR (PEBBLES>PILE) OR (PEBBLESCl) 

THEN PEBBLEFLAG:=-l 
ELSE PEBBLEFLAG:=+l; 

IF PEBBLEFLAG=-1 

THEN WRITE (27,'Y5>',27,'p',' Illegal move ',27,'q'); 

UNTIL PEBBLEFLAG=+1; 

WRITE (27,'Y* ',27,'K'); (erase invalid input prompts) 

PILE:=PILE-PEBBLES * 

IF PILE=0 THEN C0MPUWIN:=+1 {if pile gone, then computer won) 

ELSE C0MPUWIN:=-1; 

WRITE (27,'Y+ ',27,'J'); 

END (HOWMANY); 


PROC COMPUTERMOVE; Cget the computer's move) 

VAR C, D, FACTOR, COMPMOVE : INTEGER; 


58 Sextant Spring 19S2 


BEGIN 

PAUSE (50@); 

FACTOR:=(PILE-1> DIV(DRAW+1); 

COMPMOVE:=(PILE-i)-FACTOR*(DRAW*1); (calculate winning move) 

IF COMPMGVE=0 THEN (if winning move not possible..) 

BEGIN 

REPEAT (then generate random move) 

C:=RANDOM; 

IF C=0 THEN C:=l; 

D:=RANDOM; 

IF D=0 THEN D:=l{ 

COMPMOVE:=C*D; 

REPEAT 

IF COMPMOVE>DRAW THEN COMPMOVE:=COMPMOVE-DRAW; 

UNTIL COMPMOVEODRAW; 

UNTIL COMPMOVE<*P I L.E; 

END; (IF) 

WRITE (27,'Y+$',27,'K'>; 

WRITE ('I"m qoinq to remove ',COMPMOVE#,' pebble’); 

IF COMPMOVE>1 THEN WRITE ('s'); 

PILE:=PILE-COMPMOVE; 

IF PILE=0 THEN PLAYERWIN:=+l (if pile gone, then player won) 

ELSE PLAYERWIN:*-i; 

PAUSE (50@); 

WRITE (27, 'Y-*', 'The new total is ',27,'Y-5',27,'K',27,'p',PILE#,27,'q'>; 
PAUSE (375); 

END; (COMPUTERMOVE) 


PRQC WIN; (player wins) 

VAR RESPONSE : INTEGER; 

BEGIN 

PAUSE (500); 

WRITE (27, Y33', 27,' J', 27, ' p'); 

WRITE (' ******** you WIN!!! ******** ‘,27,'q’,7); 
PAUSE (500) * 

WRITE (27,’Y53-* , 'play again? (N/RETURN) '); 

READ (RESPONSE); 

CONCL; 


IF 

RESPONSE*'N' 

THEN REPLAY:—1 


ELSE REPLAY: 

=+i; 

END; 

(WIN) 


PROC 

LOSE; 

(computer wins) 

VAR 

RESPONSE : 

INTEGER; 

BEGIN 




PAUSE (500); 

WRITE (27,' Y33', 27,' J', 27, ’ p' >; 

WRITE (' ******** YOU LOSE!!! ******** ',27,' q’ ,7); 
PAUSE (500); 

WRITE (27,' Y53','play again? (N/RETURN) '); 

READ (RESPONSE); 

CONCL; 

IF RESPONSE*'N' THEN REPLAY:=-l 
ELSE REPLAY:=+i; 

END; (LOSE) 


Sextant Spring 1982 59 



BEGIN (Ha in Prog rani 3 


OPENING; 

REPEAT 

INITIALIZE; 

HEADER; 

REPEAT 

HOWMANY; 

IF CQMPUWIN=-1 THEN COMPUTERMOVE; 

IF (PLAYERWIN=+i) OR (COMPUWIN-+1) THEN GAME:=+1 
ELSE GAME;=-1; 

UNTIL GAME=+1; 

IF PL.AYERWIN=+1 THEN WIN 

ELSE IF COMPUWIN=+l THEN LOSE; 

UNTIL REPLAY=-1; 

END. CNIM3 


A half dozen articles in this issue were typeset 
from HDOS disk files by Beeline Services, 211 E. 
Allegan St., Otsego, MI 49078, 616/694-6424. 
Beeline’s Walt Gillespie has been a big help in 
transforming the output of authors’ computers into 
print. 


A similar service is provided by Computer 
Press/Techni-Process, 126 Post Street—Room 408, 
San Francisco, CA 94108. They offer a “coding 
guide, photographic sample, and related informa¬ 
tion—send a stamped, self-addressed, standard 
business size envelope.’’ 


iiui-ruii 

MULTI-PRINT 

MULTI-PRINT 

MULTI-PRINT.. 


PRINTS: MULTIPLE COPIES (1 to 48) 

OF: MULTIPLE FILES (1 to 15) 

to: MULTIPLE PRINTERS (1 to 4) 

ALLOWING YOU TO USE THE COMPUTER FOR OTHER JOBS, 
ALL FOUR JOBS ARE SIMPLY AND INDIVIDUALLY 
CONTROLLED AT ANY TIME. HDOS 1.6/2,0 COMPATIBLE. 


MULTI-PRINT IS A UNIQUE SPOOLER . 

SUSPEND/ABORT ANY TIME 
NOT AFFECTED BY CONTROL CODE PROCESSING 
BUILT IN PROTECTION FEATURES 
BUFFER ALLOCATED TO A DRIVE, NOT A DISK 
USES UNLOCKED DRIVERS 
BUFFER AND RAM SPACE RETURNED TO SYSTEM 
USER PROGRAM FREEDOM 
BUFFERS TO HARD/SOFT SECTORED DISKS 
DUAL MODE OPERATION 

NOT RESTRICTED TO ANY SPECIFIC CHANNEL 
SIMPLIFIED INSTALLATION 

AVAILABLE FOR $40,00 (U.S. CURRENCY) FROM 


T & E ASSOCIATES, INC. 

P.0. BOX 362 
MILLERSVILLE, MD 21108 


CIRCLE #104 ON READER SERVICE CARD 



Sound 'Pocuwif 



v_ _J 


HEATH/ZENITH computers sound off with the PSGx2 ! Multi-channel ability and an 
infinite variety of effects under program control. Continues to produce sound after 
initial commands are given - perfect for games, music synthesis, etc. 

6 ANALOG SOUND CHANNELS - 2 ENVELOPE GENERATORS 
2 NOISE SOURCES WITH PROGRAMMABLE PERIOD 
PROGRAMMABLE VOLUME & FREQUENCY (27 Hz - 111 KHz) 

CRYSTAL TIME BASE - ACCURATE MUSIC SCALES 
INCLUDES AUDIO MONITOR AMPLIFIER AND SPEAKER 
32 GENERAL PURPOSE I/O LINES 
INSTALLS ON RIGHT SIDE OF MACHINE - REQUIRES O-ORG 


Assembled board, instructions, documentation & software . . . only $ 


125oo 


Include $5 shipping (foreign $8). CA residents add 6% lax. 



MICRO-PIANO: Turn your PSG equipped computer into a real time musical instrument 
Play 6 note polyphony over an 8 octave range from the terminal keyboard. Create or 
mbdify your own voices via a graphic editor and save on disk tor use later. Keyboard 
may be split so two voices may be played simultaneously. This program is simple to use 
and provides hours ot enjoyment tor $24.95 X 


A 


Also available, single chip version tor H8 computers with HA8-3 Color Graphics. Otters 
1/2 the capabilities of the multi chip version, sells tor $16.95 * 


* Ppd USA, foreign add $2. CA residents add 6% tax. Single-density data disk requires 
HDOS 1.6 or later, and makes extensive use ol HI9/89 graphic functions. 


mako data products 

1441 +B N. RED GUM, ANAHEIM, CA 92806 (714) 632-8583 

* H8. H89, and HDOS are registered trademarks ol HFATH/ZFNITH. CP/M is a registered trademark ol Digital Research. 

CIRCLE #107 ON READER SERVICE CARD 


60 Sextant Spring 1982 

























A Parallel Interface for the ’89 


— J.C. Hassall — 


The digital wizards at Heath who designed the 
H88/H89/Z89 seem to have been enamored of the 
RS232 serial data communication protocol. With a 
serial data transmission protocol, data words are 
transmitted and received one bit after another, 
being preceded and followed by control bits. One 
byte (eight bits) may require ten or more bits for 
serial transmission. In a parallel protocol, however, 
each bit goes over its own line, so eight bits can be 
processed in the same amount of time in which a 
serial protocol processes one bit. It is intuitively 
obvious that a protocol where bits are transmitted 
serially is inherently slower than a parallel protocol, 
where all data bits are transmitted simultaneously. 

Serial data transmission has its applications, 
such as interfacing to remote devices (printers, 
video monitors, and so on). While interfacing 
remote equipment clearly dictates a serial protocol, 
however, there are numerous applications where a 
parallel interface is far more desirable. Consider 
the advantages of parallel interfacing for a 
UVPROM (Ultra Violet Eraseable, Programmable 
Read Only Memory) programmer; or a multi¬ 
plexed seven-segment display for alphanumerics 
which reads like a ticker tape display; or a music 
generator using the General Instruments AY-3- 
8910 integrated circuit; or a myriad of other 
applications. I have designed all of these items and 
have interfaced them to an H89. Using a parallel 
interface was easier with these projects than using 
a serial interface (in the case of the multiplexed 
display, it was necessary, due to the high data 
transmission rates involved). Until recently, how¬ 
ever, Heath/Zenith had not seen fit to make a 
parallel interface available for the H89 as they had 
for the H8. The subject of this article, as you may 
have guessed from the title, is a parallel interface 
for the H89. The design presented here is intended 
to provide a parallel interface for those H89 
owners who do not have one. And, in distinction 
from the Zenith version now available, it is intend¬ 
ed to be somewhat less expensive, on the one hand, 
and to allow reprogramming of the 24 input/output 
(I/O) lines, on the other. The parallel I/O portion 
of the Z89-11 Multi-Mode Interface Card is 
expressly designed to support the Epson MX-80 


printer. Like the H8-2 “parallel” interface for the 
H8, it is merely a serial interface attached to a 
serial-to-parallel converter. 

The design shown in this article is a combined 
serial/parallel I/O board, with three parallel ports 
and two serial ports (the Line Printer port at 340- 
347 octal and the Data Terminal Equipment port 
at 330-337 octal—both as designed by Heath for 
the H88-3 three-port serial interface board). 

If the H88-3 three-port serial board is already 
installed in your system, the board described in this 
article can still be installed, due to the modular 
concept of the design; the serial portion is separate 
from the parallel portion. If the H88-3 is already 
installed, do not populate the serial portion of the 
board with the integrated circuit (IC) chips other¬ 
wise indicated. Simply omit ICs 1,2,5-8 in Figure 2, 
the chips in the serial portion of the design. 

Since the Heath documentation very clearly 
describes the design and operation of their serial 
interface board, no explanation of the serial por¬ 
tion of this board will be presented here. Readers 
who wish more information on serial communica¬ 
tion protocols are invited to read References 1 and 
2. Reference 1 is the Electronic Industries Associa¬ 
tion (EIA) RS232C standard and consequently is 
not light reading. Reference 2 contains an excel¬ 
lent overview of serial communication in general, 
with specific details on RS232C and current loop 
methods. 

The serial portion of the design given here is a 
direct replacement for the H88-3 Serial I/O Board, 
less the Data Communications Equipment port 
(320 octal); therefore, systems using this board will 
also have software compatibility with the H88-3 
board. 

The three parallel ports are achieved using the 
Intel Corp. 8255 Programmable Peripheral Inter¬ 
face (PPI). As explained below, the PPI’s 24 I/O 
pins may be variously configured for direction of 
data flow, handshake generation, etc. 

Background on the 8255 PPI 

The 8255 PPI is a general purpose program¬ 
mable device originally designed by Intel to inter¬ 
face to the 8080, its successors, and related 


Sextant Spring 1982 61 




BLOCK DIAGRAM 


D7 THRU DO 


RO 
WR 
AI 
AO 
RESET 


CS 



I/O 

PA7 THRU 
PAO 


I/O 

PC7 THRU 
PC4 


I/O 

PC3 THRU 
PCO 


I/O 

PB7 THRU 
PBO 


PIN NAMES 


PIN CONFIGURATION 


D7-DO 

DATA BUS (BI-DIRECTIONAL) 

RESET 

RESET INPUT 

CS 

CHIP SELECT 

RD 

READ INPUT 

WR 

WRITE INPUT 

AO - A 1 

PORT ADDRESS 

PA7 -PAO 

PORT A (BIT) 

PB7-PBO 

PORT B (BIT) 

PC7-PC0 

PORT C (BIT) 

VCC 

+ 5 V 

GND 

OV 


PA 3 

c 

1 


40 

□ 

PA4 

PA2 

c 

2 


39 

□ 

PA5 

PA 1 

c 

3 


38 

□ 

PA6 

PAO 

c 

4 


37 

I] 

PA7 

RD 

c 

5 


36 

=3 

WR 

CS 

c 

6 


35 

□ 

RESET 

GND 

q 

7 


34 

□ 

DO 

A 1 

c 

8 


33 

□ 

Dl 

AO 

c= 

9 


32 

□ 

D2 

PC 7 

c 

10 


31 

Z1 

D 3 

PC6 

c 

1 1 

8255A 

30 

□ 

D4 

PC5 

c= 

12 


29 

13 

D5 

PC4 

c 

13 


28 

□ 

D 6 

PCO 

1= 

14 


27 

□ 

D 7 

PC 1 

c 

15 


26 

=3 

VCC 

PC 2 

c 

16 


25 

□ 

PB7 

PC3 

c 

17 


24 

□ 

PB6 

PBO 

c 

18 


23 

Z3 

PB 5 

PB 1 

c 

19 


22 

□ 

PB4 

PB2 

c 

20 


21 

□ 

PB3 


Figure 1: Block diagram of the Intel 8255 PPI chip, showing the port organization and internal 
bus structure. 


62 Sextant Spring 1982 
























































































processors. The 8255 may be programmed in a 
variety of ways, and is capable of having its operating 
configuration modified by the central processing 
unit (CPU) under program control. For example, a 
single CPU command will define how any or all of 
the 24 I/O pins are to be used, such as for input, 
output, handshaking, and interrupts. The basic 
organization of the 8255 is shown in Figure 1. The 
modes of operation of the 8255 are as follows: 

Mode 0: (Basic I/O) The 24 I/O lines are 
divided into two groups of eight lines each 
(ports A and B) and two groups of four lines 
which together are called port C. Each 
group or port may then be individually 
programmed for input or output operation. 
This is the simplest of the three operating 
modes. The output ports are latched: they 
maintain whatever state they are put in 
until changed. The input ports are simply 
three-state input buffers. 

Mode 1: (Strobed I/O) The two ports A and 
B are used in a unidirectional data flow 
mode, as either input or output, in conjunc¬ 
tion with strobes, or “handshaking” signals. 
The remaining port C is divided into port C 
upper and port C lower. Ports A and B use 
the upper and lower ports C to generate or 
accept these strobe signals. The data are 
latched for both input and output at ports A 
and B. 

Mode 2: (Strobed Bidirectional I/O) Port A 
is used as a single bidirectional eight-bit 
I/O port. Strobed data transfer is used in 
Mode 2 operation; five lines of Port C 
handle the bits that enable this. 

In addition, irrespective of the mode of opera¬ 
tion, there is a bit set/reset capability for port C 
which allows any one of eight output bits to be set 
(logic 1) or reset (logic 0) using a single output 
instruction. 

The mode control word stored in a memory 
register of the 8255 is used to define the operating 
mode for each of the PPI ports so that the program¬ 
mer is not restricted to committing all of the 241/O 
lines to one operating mode. For example, port A 
could be assigned mode 2 operation, while port B 
and the three remaining lines of port C could be 
configured for either mode 0 or mode 1 operation. 
For the interface discussed in this article, the 8255 
PPI is configured so that its control register looks to 
the CPU like an output port: the CPU sends a data 
byte to that port to determine the mode configura¬ 
tion of the PPI. 

References 3 and 4 will provide the interested 
reader with additional information on the 8255. 

Design background 

The first step in designing a computer inter¬ 
face is to determine what signals are available and 
what signals are required by both the computer 


TRY THIS 
MEMORY TEST 


This is a significant test of memory capability. Jnability to 
perform this simple test will restrict the application of your 
computer in several important areas. Trionyx Electronics, 
Inc. and other manufacturers are developing a number of 
new products for the H8* computer and it is important that 
they be supported by properly working memory. 

1) Boot HDOS - Get System Prompt. 

2) Reset the Computer. Simultaneously depress the 
0 and RST keys on the H8 front panel. Hold for 
10 to 15 seconds. 

The CPy board must remain reset throughout this 
period. This simulates a HOLD command on the 
computer bus. 

3) Load the Program Counter (PC Register) with 040 
100 (warm boot). 

4) Push GO. The system should automatically return 
to HDOS. 

Any well designed computer memory will pass this test. 
Both Heath and Trionyx memory boards for the H8 computer 
will pass this test using the Heath 8080A CPU board. 


* H8 is a registered trademark of the Heath Company 


— TRIONYX 
ELECTRONICS 

BOX 5131-C, SANTA ANA, CA 92704 


VB VOICE 
SYIMTHESIZER 



MI-8 

822 E.COUNTY Rd.30 
FT. COLLINS, CO. 80525 


i demo/d iagnostii 


CHECK C.QD. 


(303) 6 69-41 1 6 


i parallel 
Lhs SHIPPED I 


STUCK IN 4b KOUnS I 


:1/ZU9 computer. 


Sextant Spring 1982 63 
















Index to Advertisers 


Reader 

Service Number Page Number 

109 

Evryware 

19 

126 

MLM Associates 

44 





“Invasion”, “Missile Control”, 



Morse code programs and file 






“Y-Wing Fighter”, and “Galac¬ 



management program. 


122 

Apogee Software 

49 


tic Warrior” games for HDOS 


115 

MPI 

27 


CP/M and HDOS programs: 



and CP/M. 



Printers for Heath®/Zenith 



“UNERASE”, “STATPATCH”, 


108 

FBE Research Company, Inc. 

18 


systems. 



“MAZERACE” 



H/Z89 parallel printer inter¬ 


113 

Newline Software 

24 

117 

Audionics Systems Corporation 

28 


faces with software support. 



Video Scribe Text Editor, 



Peripherals, accessories, and 


102 

Jay H. Gold, M.D. 

6 


Video Artist Plus, H25/Z25 



supplies for Heath®/Zenith 



Home finance system for 



Graphics Generator, Touch 



systems. Dealer inquiries in¬ 



HDOS Microsoft BASIC. 



Typist and Tour-700. 



vited in Texas and Oklahoma. 



Heath Users’ Group 

54 

120 

The PC&J Graphics Co., Inc. 

35 

124 

Beeline Services 

50 


Software for cassette, HT-11, 



Nylon ribbons for H-14. Pro¬ 



“Paper Porter” for tractor-feed 



HDOS, and CP/M. Also 



gramming aids. 



printers; programming aids. 



REMark. 


123 

Steven Robbins 

49 


Beggs Engineering 

26 

127 

Hilgraeve Inc. 

77 


“Edit 19”, “Submit” and 



“Circuit” and “Pulse”, engi¬ 



“Access” CP/M software for 



“Time” programs for HDOS. 



neering software. Also “Stamps” 



communication with remote 


114 

Sandia Computer Products Co. 

26 


for stamp collecting. 



computers. 



“The Entertainer”, a color 


116 

Buss 

81 

121 

Hoyle & Hoyle Software 

42 


graphics/sound board for 



Independent Newsletter cover¬ 



“A Remarkable Experience”, 



H89/Z89. 



ing Heath®/Zenith computers 



“A Galactic Experience” and 



Sextant 

16 


and independent support. 



“Steer Kleer” games for 



Magazine for users of com¬ 


118 

C. D. R. Systems, Inc. 

30 


HDOS. 



puters from Zenith Radio 



Disk controller for H/Z89 sup¬ 


106 

The Keyboard Studio 

13 


Corporation. 



ports 8" and 5.25" drives. 



Tandon disk drives, controllers 


128 

Sigmasoft and Systems 

77 

110 

Commsoft 

20 


for H8 and H89, MPI printer, 



SigmaSound™ board, sound 



Ham radio programs, a gene¬ 



ZDS hardware and software. 



and joysticks for H89. 



alogy program and hardware 


119 

Lindley Systems 

37 

111 

Software Support 

21 


interface for ham stations. 



MX Printer Driver, Ticker 



Disk drives. 


101 

Data Compass 

opp 1 


Tape Program, Heath®/Zenith 


103 

The Software Toolworks 

8 


Mass Storage “intelligent” 



graphics for Epson, Check 



20 software products including 



single or dual drive 8" flexible 



Master. 



“Spell”, a spelling proofreader. 



disk systems. 


105 

Magnolia Microsystems 

7 

112 

Sunflower Software, Inc. 

22 

129 

D-G Electronic Developments 

40 


H/Z89 Double Density Disk 

16 


Programs for word processing, 



Co. 

41 


Controller, CP/M Disk 



education, data management; 



HDOS software. H8 hardware 

84 


Subsystems. 



compilers/translators, utilities 



includes RAM, Z80 CPU. 


107 

Mako Data Products 

11 


and applications. 



Dr. Dobb’s Journal 

29 


H8 & H89 sound board, unit 

24 

104 

T & E associates Inc. 

12 


Monthly magazine for users of 



conversion software, and H8 

52 


“Multi-print” spooler, “Maxi¬ 

60 


small computer systems. 



Double-Density Disk 

60 


print” HDOS drivers. 


125 

Environmental Control Systems 

55 


Controller. 



Trionyx Electronics 

5 


Clock/calendar and parallel 



MI-8 

63 


H8 hardware includes RAM, 

63 


I/O for H/Z89, H8. 



V8 voice synthesizer, model II. 



Z80 CPU, motherboard. 

78 


79 


Please refer to the key below when completing the article evaluation 
form on the attached Reader Service Card. By letting us know how 
interesting and/or helpful you found each feature in this issue of 
SEXTANT,you will help us to choose the best articles for you in the 
future. 

1. John Walker and David Johnstone, Heath/Zenith Computers: An Interview and Overview 

2. Hugh Kenner, A Professional Writer Looks at Budget Word Processing 

3. F. X. Skip Millor, How to Turn Zenith Screen Graphics into Color Slides 

4. Raymond Dotson, Benton Harbor BASIC Tests Typing Reaction Time 

5. Kenneth A. Patrick, Print Spoolers 

6. Arthur A. Frost, Rubik’s Cube: A Computer Simulation in Microsoft BASIC 

7. Richard E. Smith, Disk Programming Without HDOS 

8. Arnold R. Madeira, A Candid Look at Tiny Pascal 

9. J. C. Hassall, A Parallel Interface for the ’89 

10. Jerry K. Pearlman, What s a Company Like Zenith Doing in the Computer Business? 


64 Sextant Spring 1982 







Keaae, Serv.ee 



'ease answer the following questions to help us mahe Sextant 
-en better for Y 0 ^; do you own/use? 

Which microcomputer ao y 


H 8 

HU 

H89 

Other: 


□ Z89 

□ H 88 

□ ET-3400 


101 102 103 104 105 
106 107 108 109 110 
111 112 113 114 ll 5 
116 117 118 119 120 
121 122 123 124 125 


facing this card. 8 9 10 

‘ Q Q □ Excellent 

□ □ □ Good 

□ Q □ Fair 
q Q □ Poor 


□ 

□ 

□ 

□ 


3 4 
□ □ 
□ □ 
□ □ 
□ □ 


7 

D 

□ 

□ 

□ 


Which of the following do you use? 


rnmments: 


I 5 V 4 " disk 
1 8 " disk 
] Hard disk 
1 Other: 


D CP/M 

□ HDOS 

□ HT-11 


How did you obtain this copy 


of S extant? 


1 Subscription 

| Retail store 
1 Friend 
1 Other: 






p.K SEXTAN T 

Washington, D.C. 20003 




and the interface, and the timing relationships of 
all of the signals. Another consideration is interac¬ 
tion with the operating system; early in the design 
process, we must decide whether to design an 
interrupt-driven interface or a polled interface, 
and whether a memory-mapped or I/O-mapped 
port is more suitable. In the present case, I felt that 
interaction with the Heath Disk Operating System 
(HDOS) would be easiest with a polled interface 
using an I/O-mapped port. Not only did I decide to 
use an I/O-mapped port, but, due to the peculari- 
ties of port decoding on the H89 bus, I chose to use 
an existing (already decoded) port. 

The second step is to develop the design, 
taking into consideration the above constraints. 

Access to the system bus is required to incor¬ 
porate an interface of this nature. The H89 has two 
separate buses: the “left-side” bus and the “right- 
side” bus. The “left-side” bus seems to have been 
designed for memory-related expansions to the 
system, since no I/O signals are available there. 
Conversely, the “right-side” bus seems to have 
been designed for I/O-related expansions. That is 
not to say that an I/O interface could not be 
designed to work on the “left-side” bus—the FBE 
Research interface for the Centronics 737-1 
printer is an excellent example of a well-designed 
I/O interface adaptable to either bus (FBE Re¬ 
search Company, Inc., P.O. Box 68234, Seattle, 
WA 98168). 

Signals from the computer 

At first glance, the signals available to us are 
almost overwhelming. Not only are there a lot of 
signal lines drawn on the H89’s schematic diagram 
(part one of three), but they seem to have unintel¬ 
ligible names. 

Concentrating on the serial interface sche¬ 
matic, it can be seen that there are basically three 
types of signals shown, in addition to the power 
lines. The first two, lines which have a logic level 
associated with them, are shown with either an H” 
or “L” suffix. The true, or active, logic level 
associated with that line is represented as either H 
(high) or L (low). In other words, any line with the 
suffix H is active, or logical true, when it is high, or 
at a voltage level of +5 volts. The third type, signal 
lines with no suffix, are not static signal lines, but 
rather dynamic lines (e.g., the 1.8432 MHz system 
clock line). These lines may or may not represent 
timing constraints to the design. In our case, we 
need not worry about dynamic lines (i.e., the 
system clock line), as there are no dynamic signals 
required. 

The left-most portion of the signal name signi¬ 
fies the generic type of signal. A line preceded with 
a “D” is a data line; “BA” means Board Address; 
“IO SERL” means I/O Serial; “IO LP” means I/O 
for the line printer port; and “INT” means Interrupt. 
(We will not be concerned about the interrupt 


lines here, since the 8255 portion of our interface 
supports polled, rather than interrupt-driven, 1/O.) 

RESET H is the line for the system reset 
function, “BRD L” is the Board Read line, and 
“BWR L” is the Board Write line. Some of the logic 
suffixes are preceded by a number, such as “INT 
3L”. The number tells us which signal line of many 
of the same type we are dealing with. For example, 
INT 3L is the third interrupt. Similarly, IO SERL 
OL is the “zeroth” I/O serial line, and BA OH 
through 2H are the system address lines AO 
through A2. 

The data lines are bidirectional in that data bits 
are transmitted in both directions—but not simul¬ 
taneously. The direction of all of the remaining 
lines is onto the board except the three interrupt 
lines, which leave the board. 

Signals required by our interface 

Before discussing the signals required by the 
8255, I should explain the signal nomenclature 
which we are about to see. The Institute of Elec¬ 
trical and Electronics Engineers (IEEE) has 
adopted a convention which is the salvation of 
writers. A signal which is active low has heretofore 
been written with an overbar above the signal 
name (e.g., CS). That is all well and fine until you try 
to type that overbar, to say nothing of using a word 
processor! My printer, a Centronics 739, supports 
the overbar, but to get Zenith Electronic Typing 
word processing software to recognize the overbar 
is a non-trivial task. The IEEE has proposed that, in 
place of the overbar for active low signals, an 
asterisk (*) be typed immediately after the signal 
name—simplicity itself! Thus, any signal written 
with a suffix asterisk should be read as “active low.” 
Referring to Figure 1, the signals required by the 
8255 are as follows: 

Data signals DO through D7 (in order, least 
significant through most significant bits of 
the eight-bit data word). 

An RD° (read from the 8255) signal to take 
input data from the appropriate 8255 port 
and put it on the system bus. 

A WR° (write to the 8255) signal to tell the 
8255 to take the output data from the 
system bus and handle it according to the 
mode configuration previously set. 

Signals AO and A1 to select one of four 
ports (A, B, C, or control) either to read or 
write. 

A reset signal to clear all of the 8255’s 
internal registers. 

A chip select (CS°) signal to turn the 8255 
on. 

The Data Lines DO Through D7 

The data lines supply data from the system data 
bus or provide data to the system from the PPI. The 
data pins are bidirectional (i.e., they can either 
receive data from the system or transmit data to the 


Sextant Spring 1982 65 




P601 


K DIH 


£ D2H 

3 D3H 

£ D4H 

* DSH 

£ D6H 

y D7H 

S 

C - 




LINE PRINTER 

DOH 1 


* 

-1- 

1 tOH 

4 

1 D4H 

5 

~'DStH 

6 

I D6H 

7 

1 D7H ~ 

8 

Baoh 

2d 

^ BaIH 

27 

iA2ir 

26 

BRDL 

21 

BWRL 

UL 


T 

_IS 

_JZO_LE_L_l± 

L8432MHZ CLK 16 



i 12 

t 

13 


1 40 

20 


> 22 


r 25 


19 


ICi 


5V 


10 


t^Tvci 


36 


37 


38 


Tl 


1C5. 


a 








6N0 


LINE PRINTER 
PORTS 340/347 


-I2V 


33 2 


32 12 

L- 


r 

3V ^" in 
tew* 


31 5V< 9 

hL 


r 1 


IC6 


♦5V 


y 


6N0 


14 


F 


SO IN 

CTS 

DSR 

DB25S 


SD OUT 
DTR 

RSLD OUT 
RSLD OUT 
6N0 


DATA TERMINAL 
EQUIPMENT 

DOH 


DIH 

2 

02H 

3 

DSH 

4 

“W 

5 

b5H 

6 

T56RT" 

7 

T57R” 

8 



12 

: 



* 10 

19 


, 20 


; 22 


L_25 


IC2 


10 




IC7 


36 


37 


38 


^OHO. 


1± 








DATA TERMINAL 
EQUIPMENT 
PORTS 330/337 


3 


“I2V-4—jr 
♦5V <—i 


3£ 


♦5V<- 


33 


♦5V<- 


♦5V<- 


1C8 




-D> 


I> 


I> 


QND 


F 


SD OUT 

RTS 

DTR 

RSLD IN 

DB25P 


SD IN 

CTS 

DSR 

OND 


PARALLEL I/O 


IC 1 

8250 

IC 2 

8250 

IC 3 

8255A 

IC 4 

7404 

IC 5 

MC I489P 

IC 6 

MC I488P 

IC 7 

MC I489P 

IC 8 

MC I488P 


GRAPHICS BY JOHN D. KIRK 


DOH 34 

DIH 33 


D2H 

32 

D3H 

31 

D4H 

30 

D5H 

29 

D6H 

28 

D7H 

27 

AOH 

9 

AIH 

8 

RDL 

5 

WRL 

36 


RESET H 35 


CS L 6 


IC3 


♦5<- 


2 

1 

40 

39 

38 

37 

18 

19 

20 

21 

22 

23 

24 

25 

14 

is 

16 

17 

13 

12 

II 


PORT A 


7777777777. 


PORT B 


7777777777 . 7 . 


PORT C 


77777777777 


13 



DB25S 


Figure 2: The circuit diagram for the serial/parallel interface. Note that the serial portion of 
the interface is a direct replacement for the H88-3 three-port serial board. The parallel portion 
gives the H88 and H/Z89 a much needed interfacing capability. In this figure, the 8255 PPI’s 
chip select line is hardwired to the cassette port. In the printed circuit version, the chip select 
line is jumper selectable for either the cassette port (370Q) or the serial 0 port (320Q). 


66 Sextant Spring 1982 
















































































































































































































































































































system, using the same set of pins). Data bits are 
sent to the system when the RD° line is active, and 
are received from the system when the WR° line is 
active. 

The Read (RD°) Signal 

This signal is necessary to notify the PPI to take 
data from the appropriate input port and pass the 
data to the data bus. In other words, the CPU is 
ready to read data from the outside world, via the 
PPI. 

The Write (WR°) Signal 

This signal is the converse of the RD° signal, in 
that the CPU will in this case write data to the 
outside world via the PPI. Both the RD° and WR° 
signals are active low, meaning that when the 
corresponding system bus line is low, the PPI lines 
will be active, and the PPI maybe either read from 
or written to. 

Address Lines AO and A1 

Since there are four ports to be controlled by 
the system bus, there must necessarily be more 
than one signal to activate the appropriate port 
The function of the address lines AO (the lowest 
order address line on the system bus) and A1 (the 
next lowest address line) is to decode, in conjunc¬ 
tion with the CS° signal, which port is to be 
accessed for reading or writing. 

The Chip Select(CS°) Signal 

The CS° signal is essentially an on/off signal for 
the PPI. To prevent extraneous data from being 
input or output when not desired, the PPI is kept 
disabled, or turned off, until the appropriate time. 
The CS° signal is decoded from the system address 
lines. In a system where I/O port decoding is the 
prerogative of the user, a decoder would be used 
on the system address lines to decode a unique 
port address for the PPI. In the case of the H89, 
however, we do not have the ability to assign a port 
address of our choice to the PPI. We are constrain¬ 
ed to use an existing port address which has 
already been decoded by the H89’s decoder chip 
U550. The address which I chose was 320 octal 
(the Data Communication Equipment address on 
the H88-3 serial I/O board). To afford maximum 
user flexibility, I included in the printed circuit 
version the capability to use either port 320 octal or 
the cassette port (370 octal). 

The Reset Signal 

The reset signal is used simply to clear all 
registers of the PPI to a known state. This is used 
primarily on power-up, but may be used at any 
time. With the Heath system, the only time the 
RESET line is active is at power-up or when the 
system is manually reset by the shift-reset 
sequence from the keyboard. 

The interface design 

Having established the signals available from 
the system and the signals required by the inter¬ 
face, we are now ready to undertake step two of the 


design. Since the level of the system data lines is 
the same as required by the interface, the 8255 
data pins may be connected directly to the system 
data lines (P601 in Figure 2). Since the BRD L line 
from the system is an active low I/O read line, we 
can connect that line to the RD° line on the 8255; 
the BWR L line performs the WR° function. BAO 
and BA1 bring system address lines AO and A1 to 
the PPI to decode which of the four ports is being 
accessed. The system active low reset line is 
inverted through IC4 to provide the reset function. 
Use of a pullup resistor ensures that the line will 
reach the high level when RESET L is active. The 
CS° line is hardwired in Figure 2 to port 320 octal; 
in the printed circuit version, the user has the 
option of using port 320 octal or port 370 octal (the 
cassette port), with some exceptions. 

Users with the WH88-16 memory expansion 
and/or the H88-7 replacement Read Only Memory 
(ROM) kit installed have two options. On the one 
hand, if the H47 eight-inch disk drive accessory is 
not installed and is not planned to be installed, 
then simply replace the U550 which came with the 
H88-7 (Heath part number 444-61) with the old 
U550 (part number 444-43). This change will 
allow use of port 370 octal. Have no fears about 
software compatibility. Since it is simply an I/O 
port decoder, replacing U550 will have have 
absolutely no effect on the system other than to 
allow use of the cassette port and disallow use of an 
H47. 

Alternately,if the eight-inch drive accessory is 
or will be installed, we are constrained to use only 
port 320 octal,since the H47 uses port 370 octal. 

The 8255 data out pins are connected to a 
subminiature D socket connector (popularly 
known as an “RS232C” connector). Contact 13 is 
grounded; assignments for the balance of the 
contacts are shown in Table 2. Contact 13 provides 
ground continuity from the interface to the remote 
device; +5 volts must be supplied by the remote 
device. 

A brief explanation of the use of A0 and A1 is in 
order at this point. As seen in Figure 1, there are 
four ports to be addressed in the 8255: ports A,B,C 
and the control port. When a control or data byte is 
sent to the PPI, a destination code must also be sent 
simultaneously to specify the byte type and destin¬ 
ation. Address pins A0 and A1 are used for that 
purpose. Table 1 shows the manner in which the 
signals A0 and A1 define the destination of the 
byte being sent to the PPI. These two signals do not 
by themselves generate a unit device select code. 
However, when used in conjunction with the CS° 
signal, they not only select a particular PPI (from 
among the computer’s I/O circuits), but also a 
particular port within the PPI. 

For the purposes of illustration, let us assume 
that 320 octal is the base port address. Referring to 
Table 1, it can be seen that the control port is 


Sextant Spring 1982 67 




addressed as 323 octal, port A is addressed as 321 
octal, and so on. The software section of this article 
will further illustrate port addressing. 

Construction 

Our parallel 1/O interface may be constructed 
fairly easily, using either a wired or printed circuit 
(PC) board approach. The choice is up to you. 

The design prototypeis shown in Photo 1. As is 
evident from the photo, the prototype was built 
using the wirewrap (more precisely, the Vector 
wire pencil) approach. 

If the wired approach is used, testing prior to 
use should ensure that there are no shorts and that 
all connections have been made correctly. Visual 
inspection, supplemented as necessary with con¬ 
tinuity testing and testing for shorts, is generally 
sufficient. Testing is probably the most time 
consuming aspect of a construction project, but 
large dividends are paid to the person who ensures 
that all connections are correct before using the 
project. 

If the printed circuit approach is taken (see 
Photos 2 and 3 for the PC artwork), testing time is 
considerably reduced in that the only testing 
necessary should be to ensure that no solder 
bridges have been made; a quick visual inspection 
usually will suffice. Use of the component location 
silkscreen shown in Photo 4 will greatly ease 
locating the components on the PC board. 

Most components are available from a variety 
of sources. Some of the components, however, are 
available only from Heath. The PC board designed 
for this interface is a silk-screened, double-sided, 
tin plated board with plated through holes.lt is 
available from H & H Enterprises. Parts are listed 
in Table 4, along with present prices. The only 
component which the reader must make is the 
interconnecting cable for the parallel ports. Even 
so, that part is easily made as follows. Using about 
ten inches of 26-conductor ribbon cable, a 26- 
contact socket header connector, and a 25-socket 
DB25S connector, simply attach the two connec¬ 
tors to the cable. Ensure that polarity of the socket 
header is maintained so that the header sockets are 
down, with the number one conductor on top of 
the cable (most ribbon cable is either color-coded 
or has a tracer on the number one conductor). 
Attachment of the DB25S connector is easy if the 
connector is the IDC (Insulation Displacement 
Connector) type. Leave number 26 conductor 
unattached at the DB25S connector. 

If the hardwired approach is taken, the most 
difficult aspect of construction is to correctly 
locate the two bus card edge connectors P601 and 
P602. The pin center-to-center distance is not an 
even multiple of 0.100 inches. Since the board will 
probably be constructed on perforated board with 
0.100 inch hole centers, the location of P601 must 
be kludged; I recommend making a jig. Epoxy a set 


A0 A1 I/O Operation 

0 0 DATA BUS <-> port A 

1 0 DATA BUS <-> portB 

0 1 DATA BUS <-> port C 

1 1 DATA BUS -> control 

port 

Table 1: the effect of address pins A0 and A1 
port selection in the PPI. 

on 

Header 



8255 

Pin# 

Port Bit 


Pin# 

1 

A 0 


4 

2 

1 


3 

3 

2 


2 

4 

3 


1 

5 

B 0 


18 

6 

1 


19 

7 

2 


20 

8 

3 


21 

9 

C 0 


14 

10 

1 


15 

11 

2 


16 

12 

3 


17 

13 _ 

-r C 1 rrmnri 




Vjri AIU.11U. - 



14 

A 4 


40 

15 

5 


39 

16 

6 


38 

17 

7 


37 

18 

B 4 


22 

19 

5 


23 

20 

6 


24 

21 

7 


25 

22 

C 4 


13 

23 

5 


12 

24 

6 


11 

25 

7 


10 

_ 

—-_nn onrmopfmn. 



Table 2: the pin connections for the parallel port 

connector. The header pin numbers are the same 

as the DB25S connector. 




of single row header pins to a scrap piece of board. 
After the cement has cured, cement another set of 
pins (ten or so) to the board. While the epoxy is 
curing, use an expansion board (e.g., the cassette 
board) as ajig to locate the pins (be sure to keep the 
cement off the contacts!). After the cement has 
cured, you will have a jig to accurately locate the 
bus edge card connectors on the serial/parallel 
board. Epoxy P601 and P602 onto your hardwired 
board using the jig. From there on, construction is 
straightforward. 

Of course, sockets should be used for all chips. I 
recommend the Texas Instruments low profile 
type, although any socket type should work; there 


68 Sextant Spring 1982 










LP: 


DTE 


HEADER 

D&5S 

HEADER 

D25P 

1 

ground 

1 

ground 

2 


2 

— 

3 

2 

3 

2 

4 

— 

4 

_ 

5 

3 

5 

3 

6 


6 


7 

4 

7 

1 

8 

— 

8 

_ 

9 

5 

9 

5 

10 

— 

10 

_ 

11 

6 

11 

6 

12 

— 

12 

_ 

13 

7 

13 

7 

14 

20 

14 

20 

15 

8 

15 

8 

Table 3: the wirelist for the two serial port 

con- 

necting cables for those who would rather make 
their own cables. 


is enough clearance between adjacent boards to 
use the high profile type. The headers for the serial 
portion should be right angle 15-pin types, while 
the header for the parallel portion should be a right 
angle 26-pin type. Of course the working voltage 
rating of the decoupling capacitors should be at 
least 15 volts, since one is used for the -12 volt 
supply. The double row headers used for parallel 
port chip select and interrupt level selection are 
available from a variety of suppliers. The mini 
jumpers used to jumper the appropriate pins 
together are available from Heath (see Table 4). 


When installing the two serial port connecting 
cables, connect the ground lead from each cable to 
a common ground point with the green ground 
lead from the power supply. The best location is 
under one of the connector mounting screws. 

Software support 

I feel that the simplest way to access the 8255 
for data read or write is to include the I/O code in 
the operational program, rather than access it as a 
device driver. This makes it a simple matter to 
reconfigure the mode control word during 
program execution without having to resET a 
device driver. 

As explained in the Background section above, 
the mode control word determines the PPI config¬ 
uration. Thus, the first software interfacing step is 
to output the mode control word to the control port 
(the base port plus 7). There is a different mode 
control word for each possible configuration of the 
PPI. Reference 3 contains an excellent method for 
mode control word determination without having 
to resort to a long table of values. Because HDOS 
does not recognize the 8255 per se, all inputs and 
outputs must be handled explicitly in the program, 
rather than via system calls. 

Listing 1 shows a brief demonstration program 
in assembly language; it simply toggles each bit of 
all three output ports. The CPU A register is used as 
a counter to count from 000 to 377 (octal). Each 
count is displayed so that bits 0 (least significant 
bit) through 7 (most significant bit) are toggled at 
half the rate of the preceeding bit. The delay loop 
slows the count loop so that the ascending bit 
pattern may be seen, either on an oscilloscope or 
on a set of light-emitting diodes (LEDs), If LEDs 



Photo 1: The design prototype. Note especially the configuration of the parallel interconnect 
cable on the left. The serial ports interconnect cable on the right is a special configuration for 
the prototype and bears no resemblance to the version required by the printed circuit artwork. 


Sextant Spring 1982 69 






are used, they must be buffered from the 8255 by 
7404 inverters because the 8255 cannot draw 
enough current to drive the LEDs. 

Listing 2 shows essentially the same demon¬ 
stration program, written in Microsoft BASIC this 
time. To aid in direct comparison between the two 
programs, the BASIC program is structured the 
same as the assembly language program; it 
demonstrates how easily the PPI maybe interfaced 


via BASIC. 

Both programs use only the output mode for 
the PPI; the input mode is just as easy to access. A 
colleague is using the prototype of the interface 
discussed here to interrogate his Heathkit weather 
station for outside temperature. It also accesses an 
interior temperature converter for household 
temperature. He then prints to the printer and to a 
disk file in hourly increments the time, the outside 



70 Sextant Spring 1982 








































































































temperature, and the thermal gradient for a home 
heat efficiency study he is doing. 

Summary 

The foregoing design will add to any H88 or 
H/Z89 a much-needed parallel I/O capability with 
no sacrifice in software compatibility and little or 
no modification to the system. With the inclusion 
of a parallel interface capability, the computers 


have limitless vistas for interfacing a variety of 
devices. The computers can talk to weather station 
kits, music boards, home control devices, or can 
even have voice synthesis capabilities for talking 
programs! By virtue of the modular design, if the 
Heath H88-3 serial interface board has already 
been installed, the present design can still be 
installed in the system by not populating the serial 
portion of the board. 



Sextant Spring 1982 71 



































































































































































References 

1. Electronic Industries Association (EIA), "Stand¬ 
ard RS232C: Interface Between Data Terminal 
Equipment and Data Communication Equipment 
Employing Serial Binary Data Interchange”, 
Washington, D.C. 

2. P.R. Rony, D.G. Larsen, J.A. Titus and C.A. 
Titus, Interfacing and Scientific Data Communica¬ 
tions Experiments , The Blacksburg Continuing 


Education Series, Howard W. Sams and Co., Inc., 
Indianapolis, IN 

3. P.F. Goldsborough, Microcomputer Interfacing 
With the 8255 PPI Chip , The Blacksburg Continu¬ 
ing Education Series, Howard W. Sams and Co., 
Inc., Indianapolis, IN 

4. Intel Corp., Peripheral Design Handbook , Santa 
Clara, CA 



RO. DRAWER H 
BLACKSBURG VA 24060 


Photo 4: The printed circuit board component location guide. 


72 Sextant Spring 1982 




































TITLE 

'PARALLEL PORT 

DEMO PROGRAM' 


£ 

ORG 

042200A 



BASPRT 

EQU 

320Q 

Base port is the SERL 0 port (320Q) 

CNTLPRT 

EQU 

BASPRT+7 

Control port is base port+7 


CNTLWRD 

EQU 

10000000B 

Control word to establish all ports as output 

PORTA 

EQU 

BASPRT+0 

Port A is base port+0 


PORTB 

EQU 

BASPRT+1 

Port B is base port+1 


PORTC 

EQU 

BASPRT+2 

Port C is base port+2 


DELCNST 

EQU 

2000A 

Delay constant to allow bits to 

be seen 

$TYPTX 

EQU 

31136A 

Text typer in H17 ROM 


NL 

EQU 

012Q 

New line character 


.EXIT 

EQU 

0 

Exit to HDOS 


.SCIN 

EQU 

1 

Console character read 


.CLRCO 

EQU 

7 

Clear console buffer 


ESC 

* 

EQU 

27 

ASCII escape code 


BEGIN 

MV I 

A,CNTLWRD 

Load 'A' w/control word 



OUT 

CNTLPRT 

Output it to the control port 



CALL 

$TYPTX 

Print description message 



DB 

ESC,'E' 

Clear the screen 



DB 

'This demo program will cause the bits in ports 

C, B, and A' 


DB 

' in sequence, 

' , NL 



DB 

'to toggle. Just before a given port is activated,' 


DB 

' you will be 

prompted to',NL 



DB 

'press RETURN 

to acknowledge that you are ready. 

',NL+200Q 


MV I 

B,PORTC+1 

Load 'B' w/addr for port C+l 


LOOP 

DCR 

B 

Adjust to proper port number 



MOV 

A,B 

Put in 'A' 



STA 

OUTPUT+1 

Put into memory where port addr 

expected 


CALL 

$TYPTX 

Print acknowledge message 



DB 

NL,'Press RETURN to continu','e'+200Q 



SCALL 

.CLRCO 

Clear console buffer to prevent 

type ahead 

WAIT 

SCALL 

.SCIN 

Look for 'ready' acknowledgement 


JC 

WAIT 

Not ready yet 



SUB 

A 

Clear 'A' to all 0's 


DISPLAY 

INR 

A 

Increment 'A* by 1 


OUTPUT 

OUT 

000 

Display 



PUSH 

PSW 

Put 'A* onto stack 



LX I 

H,DELCNST 

Load 'H&L' w/delay constant 


DELAY 

DCX 

H 

Decrement 'H&L* by 1 



MOV 

A, L 

Get 'L' into 'A' 



ORA 

H 

Logical OR 'H* w/L 



JNZ 

DELAY 

Not zero, so continue to delay 



POP 

PSW 

Finished delaying, so get 'A' 



ANA 

A 

Is the count all the way to 000 

yet? 


JNZ 

DISPLAY 

No, so keep on looping 



MOV 

A,B 

Put 'B' into 'A' 



AN I 

003 

Last three bits 0? 



JNZ 

LOOP 

No, so not yet finished 



CALL 

$TYPTX 

Print 'finished' message 



DB 

NL,NL,NL,'FINISHED',NL+200Q 



SUB 

A 

Setup 'A' to 



SCALL 

.EXIT 

exit to HDOS 



END 

BEGIN 




Listing 1: An assembly language program which will toggle each bit in ports C, B, and A in 
sequence. 


Sextant Spring 1982 73 



10 ************************************************************************** 
20 '*** This program is a Microsoft BASIC demo for the parallel ports *** 

30 ************************************************************************** 

40 1 

50 BP=&0370 'base port is 370Q (cassette port) 

60 CW=&0200 'control word = 10000000B 

70 OUT BP+7,CW 'initialize PPI for all ports output 

80 PRINT CHR$(27)+"E" 'clear the screen 

90 PRINT"This demo program will cause the bits in Ports C, B and A f in "@ 
"sequence, " 

100 PRINT"to toggle. Just before a given port is activated, you will be "@ 
"prompted to" 

110 PRINT"press RETURN to acknowledge that you are ready." 

120 PN=&0372 'port numbers: A->370Q B->371Q C->372Q 

130 PRINT: PRINT: PRINT"Press RETURN to continue":LINEINPUT A$ 

140 FOR 1=0 TO 255 'counter for the display 

150 OUT PN,I 'display bits 

160 FOR J=1 TO 2: NEXT 'dummy delay loop 
170 NEXT 

180 IF PN=&0370 THEN 210 'finished, because port A has been displayed 
190 PN=PN-1 'not finished yet, so decrement port addr and loop 

200 GOTO 130 

210 PRINT: PRINT: PRINT "Finished" 

220 END 


Listing 2: A Microsoft BASIC program to accomplish the same function as the assembly 
language program in Listing 1. The structure follows the same sequence as in Listing 1. 


Qty 


Vendor 

Part No. 

Description 

Price 

req’d 

Heath 

134-1073 

Serial port cable for the LP: port 

$ 7.70 

1 

Heath 

134-1070 

Serial port cable for the DTE port 

7.45 

1 

Heath 

432-1076 

25-pin bus connector 

4.30 

1 

Heath 

432-1074 

10-pin bus connector 

2.15 

1 

Heath 

432-1041 

Mini juniper for interrupt/chip select 

0.90 

3 

Jade 

APP-929835-01 

36-post single row right angle header 

1.28 

1 

Jade 

APP-929838-01 

36-post double row right angle header 

2.99 

1 

Jade 

Jade 

APP-929836-01 

36-post double row straight header for 
interrupt/chip select 

2.29 

1 

APP-924013-36 

26-wire ribbon cable w/socket connector 

7.20 

1 

Jade 

CND-5251 

DB25S IDC connector for parallel ports 

6.25 

1 

Jade 

SKL-1401 

14-pin low profile sockets 

0.17 

5 

Jade 

SKL-4001 

40-pin low profile sockets 

0.45 

3 

H&H 

1222 

Parallel interface printed circuit board 

45.00 

1 

H&H Enterprises 

P.O. Drawer H 

Blacksburg, VA 24060 




Heath Company 

Parts Department 

Benton Harbor, MI 49022 




Jade Computer Products 

4901 West Rosecrans Avenue 
Hawthorne, CA 90250 





Table 4: a list of possible sources for the various components required, along with quantity required 
and price. 


74 Sextant Spring 1982 



What’s a Company Like 

TfMiTH 

Doing in the Computer Business? 

— Jerry K. Pearlman— 


Mr. Pearlman s comments were given last May at 
the 1981 Rosen Research Personal Computer 
Forum. They are reprinted with permission from 
The Rosen Electronics Letter. (Rosen Research, 
Inc., 200 Park Avenue, New York, NY 10166, 
212/586-3530; subscriptions, $345 per year.) 

There are three different types of companies 
represented at this Forum that are participants in 
the personal computer industry. First are the new 
companies focused almost exclusively on the per¬ 
sonal computer industry. Second are the estab¬ 
lished computer companies that are now targeting 
a portion of their activity toward the personal 
computer end of the spectrum. And third are the 
established companies that are new to the com¬ 
puter business. As a representative of a relatively 
large sized company in this last segment, I have 
agreed with Ben to try and give you some thoughts 
as to why the non-computer corporations are now 
and will be entering the personal computer busi¬ 
ness. 

I suggest that there are two principal reasons. 
The first reason is to bask in the reflected light of 
the high-technology boom, preferably with that 
reflected light coming from heat generated by the 
stock market. The second, and hopefully more 
significant reason, is that entry into the personal 
computer business represents a logical outgrowth 
of a corporate planning process that seeks to 
deploy corporate resource strengths into businesses 
that can benefit from and add to those very same 
strengths. 

To corporations not yet in the personal com¬ 
puter business (which seems to me to be a minority 
of those listed on the New York Stock Exchange) 
and who are now interested in the high-tech 
association, I offer some totally unsolicited advice. 
Save all the hard work that starting a new business 
entails and simply change the name of your corpo¬ 
ration. I have given this a lot of thought and think 
that the ideal name to change to is International 
Genetic CAD/CAM Computer and Cable Televi¬ 
sion Unlimited. 

Because most of the established corporations 
entering the personal computer business seem to 


be bringing real products to the marketplace, let 
me suggest to you that they must have identified a 
number of specific skills and resources that they 
believe are important to this emerging product. 
These skills and resources are centered principally 
in three areas: marketing, engineering and pro¬ 
duction. While it is my intention to discuss the 
general planning process that has been undertaken 
by many corporations, it is easiest to give you some 
examples from our own experience at Zenith. 

Marketing Resources 

First let me review the type of marketing strengths 
that a non-computer company may believe that it 
can bring to the marketplace. Four entered into 
our thinking. I am sure that they entered into the 
think ing of many of the other new entries into the 
business. These marketing strengths are the fol- , 
lowing: 

1. Product overlap with existing non-computer 

products 

2. Brand identification 

3. Distribution patterns and organizations 

4. National and international service support 

I shall discuss each factor briefly, starting with 
two together—product overlap and consumer brand 
identification. As the non-computer companies have 
reviewed their marketing strategies, they have 
identified many separate and sometimes overlap¬ 
ping markets for computer products. Each of these 
markets may attract companies who see a product 
fit with their existing businesses. Once they enter 
the business to attack the particular segment where 
they saw the fit, however, only some will stay 
within that segment. Many others will branch out 
into related computer products. 

At Zenith we identified two separate product 
areas where computer products could be an impor¬ 
tant part of our already-existing long-term product 
marketing strategy. The first was personal com¬ 
puters to be used in the home. We have believed 
that our product charter is, “If it plugs into the wall 
in your house and is essentially electronic, Zenith 
should consider making it, and there should be a 
big Z on the top.” We are pleased to confirm that 


Sextant Spring 1982 75 




there is also a very substantial hobbyist market in 
the home, and there, for brand identification pur¬ 
poses, the big Z should give way to the brand 
“Heathkit.” 

A second product area where computer product 
capability fits with established Zenith product 
planning, and where other current hardware man¬ 
ufacturers may be contemplating entering the 
computer business, is the cable TV and telecom¬ 
munications hardware business. Today’s maker of 
cable TV converters or telephone equipment or 
television sets is already dealing with one-way, and 
in many instances, two-way data communications. 
In-home data processing and storage can be logical 
product additions to communications hardware 
product lines. For example, the teletext decoders 
we are currently manufacturing and delivering, 
and the two-way cable TV decoders we have 
contracted to start delivering in late summer, 
represent two different product areas that will 
bring more and more computers into the home 
throughout the 1980s. 

Just think of the number of existing corpora¬ 
tions already marketing products in this area that 
may conclude that it is logical to expand into the 
personal computer marketplace. 

• Telecommunications companies, worldwide 

• Cable TV hardware companies, from micro- 
wave and dish makers to builders of hard¬ 
ware on the pole 

• Security firms and database operators—the 
providers of services that enter the home by 
cable or phone and need special hardware 

• National service companies from Sears to 
TRW to Electrohome which see their existing 
business as already involving them with home 
and office electronics 

A potential product fit in the home is not the 
only area of interest to corporate planners not 
presently in the personal computer business. Many 
companies will find a product fit with established 
lines of business products, educational products, 
and large-scale computer peripheral products. (The 
NCC show brought us new personal computer 
entries from at least two more terminal manufac¬ 
turers, for example.) 

In addition to product and brand considerations 
for market entry, I mentioned distribution and 
service considerations. Some established compa¬ 
nies will conclude that their distribution strengths 
in such diverse fields as toys, office products (from 
forms to furniture to copiers), or in education (from 
publishing to projectors), make the addition of 
computer products to the product line a very 
logical planning step. 

Once they have entered any niche of the 
personal computer market, it is unlikely that they 
will remain in that niche only. Our experience at 
Zenith is a case in point. With an initial entry into 
the hobby segment of the market, it was easy to 


migrate to the small business segment because the 
same core microprocessor product (the hardware) 
was very suitable as a business machine, and also 
because the Zenith brand, ability to build reliable 
products, and ability to draw on the existing 
network of 17,000 Zenith sevicemen and national 
service training facilities, all represented strengths 
in the business niche of the market. 

Going hand-in-glove with planning for partici¬ 
pation in the right niches is planning to stay out of 
niches whre you don’t bring major strengths to the 
market. In our case, for example, we leave the 
integrated office of the future to IBM, Xerox, 
Wang and 4,000 others. 

Engineering Resources 

Engineering resources are the second major 
area that may bring established corporations into 
the personal computer marketplace. This appears 
to be the digital decade. In washing machines, 
ovens, cars, paint mixers, everywhere you look, 
the microprocessor is there. Many companies may 
decide that it is a small step from designing 
microprocessors into their products to desig nin g a 
microprocessor product. Of course they are likely 
to be wrong, but a lot of them won’t believe that 
until they actually try it. On the other hand, a lot of 
technologies of other products may, in fact, be 
transferable into the personal computer business. 
Why shouldn’t a video tape recorder producer, for 
example, be able to design and build a floppy or 
hard disk product with relative ease? They have 
been dealing with related mechanical and media 
problems for years. 

One of the critical questions that corporate 
planners are considering in looking at their skills is, 
“What will constitute the major areas of ‘value 
added’ in the personal computer business in the 
years to come?” These are the areas where engi¬ 
neering skills must be applied. For example, will 
the 1985 personal computer have more value 
added in the high-resolution color television moni¬ 
tor than in the semiconductors? Will the software 
investment per machine exceed the investment in 
storage per machine? Will the keyboard manufac¬ 
turers of today be the personal computer manufac¬ 
turers of 1985? At Zenith, with engineering 
resources in microprocessor-based televisions and 
decoders, analog displays, color picture tubes, power 
supplies, and plastic cabinet molding, as well as in 
the writing of business-oriented software, we believe 
we have the principal elements of engineering 
value-added covered for the next decade. 

If the value-added swings strongly to software 
in the future, it may cause the entry into the 
marketplace of companies presently engaged in 
publishing and educational writing as well as those 
with expertise in software development for large 
machines. Thoughts like these cause me to sleep 
better at night, knowing that RCA sold Random 


76 Sextant Spring 1982 


House while Zenith still has its Heath educational 
courseware development group. 

Manufacturing Resources 

The third major resource area that the corpo¬ 
rate planners are reviewing is manufacturing. There 
are some corporations whose principal resource is 
their manufacturing skill. The prime example is 
the stereotype of the Hong Kong copy house that 
moved from radios to black-and-white television 
sets to cassette recorders. Some of them will 
certainly enter the market with plug-compatible, 
private-label personal computers for the mass 
marketers. 

The personal computer industry of today has a 
relatively high requirement for technical skills in 
hardware and software design. As the industry 
volume of personal computers grows, and as the 
rate of product change moderates, manufacturing 
skills will assume a more prominent position in the 
hierarchy. Then, companies with printed board 
manufacturing facilities in low-labor areas of the 
world will be increasingly drawn toward the com¬ 
puter business. The Taiwan, Korean, and Singapore 
black-and-white television makers of yesterday 
and today are already becoming the computer 
terminal makers of today and tomorrow. As de¬ 
sign, features, software, and service give way to 
price, as they will in some segments of the market, 
they can be expected to become personal com¬ 
puter makers in the future. 

There is one more major corporate resource 
area that may bring some non-computer compa¬ 
nies into the business. That is the possession of a 
large amount of cash. Without a good marketing or 
engineering fit, the possession of cash alone would 
seem to be a shaky reason for jumping into the 
computer business. On the other hand, corporate 
planners are a free thinking lot. How else could 
one explain large energy companies choosing chain 
retailing and office automation? 

In summary, I can see a lot of reasons why 
corporate strategic planners, in reviewing their 
own company’s strengths, may very well conclude 
that the personal computer industry is right for 
them. I expect to see many more entries. Which 
ones should be expected to succeed? Well, of 
course, there are no hard and fast ways to project 
the future. I do think, however, that the corpora¬ 
tion that sees a good solid fit in all three areas — 
marketing, engineering and production —is more 
likely to succeed than the corporation with a fit in 
two areas or in only a single area. The corporation 
with that fit in all three areas is most likely to be 
much more commited to the plunge. Given a 
random distribution of management talent and 
luck, the corporation with the best fit of its corpo¬ 
rate resources to the demands of the computer 
industry and the one with the greatest commit¬ 
ment to succeed should come out on top. 



ACCESS is a versatile modem program written 
specifically for the H/Z-89 computer. Many programs 
allow your computer to act as a terminal on a remote 
system — but none is as versatile or as easy to use as 
ACCESS. 

• Disk storage of incoming text can be toggled on and 
off with a single key. No need to leave menus and 
command lines embedded in the file. 

• I n most cases received text can be stored to the disk 
continuously. 

• All parameters and options can be manipulated from 
within the program -- no patching. 

• Any particular configuration of options can be 
named and stored on the disk for instant set-up later. 

• Compatible with most modems that connect through 
a standard serial port. 

• Single key toggle to echo display to a printer. 

• Requires a serial port and CP/M (orgO). 

• Source code (in 'C' and assembler) is available. 


ACCESS-$29.95 
source code — add $15.00 
manual only — $5.00 

MasterCard and VISA welcome 
Mich, residents add 4% sales tax 


Hilgraeve Inc. 

P.O. Box 941 
Monroe, Ml 48161 
(313) 243-0576 


CIRCLE #127 ON READER SERVICE CARD 


Sound and Joysticks for your H89 

Expand the power of your H89 with the SigmaSound® board and 
you'll like what you hear! Create music, gun shots, laser blasts, explo¬ 
sions, and fast-action arcade style games with the joystick controllers. 

The SigmaSound® board features the General Instrument AY-3-8910 
sound effects chip with an on-board crystal oscillator for the most 
accurate reproduction of musical notes possible, and two Joystick 
Controller interfaces, as well as two complete parallel ports. There are 
three tone generators, each with a range of twelve octaves, and limitless 
other special effects can be created with the white noise and envelope 
generators. 

Our new SD: device driver greatly increases the ease of programming 
the SigmaSound® board under HDOS, support that is lacking with 
many sound generators. This driver enables the SigmaSound® board to 
play a music file which can be created with any text editor. The SD: 
driver can also receive data from a program written in BASIC, or any 
language that is capable of file I/O. 

Installation is simple. The SigmaSound® board connects to either 
P504 or P505 with NO modifying. The board comes fully assembled 
and tested with complete manuals, demonstration programs, and a 
schematic. Software requires HDOS Version 1.6 or 2.0 and is supplied 
on a 5.25 inch disk. 


SigmaSound® Board (Less Joysticks) $95.00 

Joystick Controllers (Set of Two) $25.00 

SD.DVD Device Driver $10.00 

Arcade Games Package (Requires Joysticks) $30.00 



CIRCLE #128 ON READER SERVICE CARD 


Sextant Spring 1982 77 

























Z80 CPU BOARD for the H8' 

* H8 is a Registered Trademark of the Heath Company 

• Programmable Clock Rate - 2 MHZ / 4 MHZ 

(Clock Rate Under Software Control) 

• Front End Bus Termination Network 

Fully Compatable With All Heath H8 Hardware and Software 
Available In Assembled and Kit Versions 


Preliminary Announcement — 

MASS MEMORY for H8/H89* 

* H8 & H89 are Registered Trademarks of the Heath Company 

• Completely Solid State Mass Storage Unit - 
Has No Moving Parts - Low Power Dissipation 

• Silent Operation No Maintenance Required 

• High Speed Access and Data Transfer Rate 

• Expandable Memory Capacity from 128K Bytes 
to 5 Megabytes 

• Self Contained in Cabinet with Power Supply 

Base Price under $500.00 — 

Software Available For the Following Individual Applications: 

1 - Floppy Disc Drive Emulator - Can Mount and Dismount Any 

Floppy Disc, 5-1/4 in. or 8 in., Single or Dual Density 

2 - Expanded RAM Memory - Memory Management Available for 

Both Single User and Multi-User Applications 

3 - Stand Alone Mass Storage Peripheral - Available with 

Battery Back Up, Magnetic Tape Back Up, and ECC - 
Electronic Error Checking and Correction 

TRIONYX ELECTRONICS, INC. 

P.O. BOX 5131, SANTA ANA, CA 92704 





64K MEMORY £ H8* 



* H8 is a Registered Trademark of the Heath Company 

Model M-H8 

• Single Card Design 
Uses 4116 
Dynamic 
RAM 


- Over 500 
Sold in 
First 
Year! 


• Sophisticated Design 
Features Transparent Refresh 


• Internal Refresh Clock Holds 
Memory Data During Processor Halt 


NEW PRICES: 


Assembled - 
Without 

1C Sockets 

Kit - 

1C Sockets 
Included 


$ 500 

$ 415 

64K 

440 

360 

48K 

380 

305 

32K 

320 

250 

16K 

16K Memory Expansion Kit - 

$ 60 


(Memory Chips, Sockets, Capacitors) 
Set of 8 Tested Memory Chips - $ 50 


SPECIALS! 


64K Kit - 

Without Memory Chips 
$ 225 

64K Assembled - 
Without Memory Chips 
(Sockets Installed 
for Memory Chips) 

$ 300 

Printed Circuit Board - 
With Documentation 
$ 50 


Guaranteed To Work With Any Existing or New Heath H8 Products 
— Upgrade Modification Instructions Will Be Issued As Required 

Call or Write For Free Brochure • Call 714-830-2092 Ask For Bill Perry 
Get On Our Mailing List For New H8 Product Announcements 

TRIONYX ELECTRONICS, INC. 

P.O. BOX 5131, SANTA ANA, CA 92704 









Classified 


To get in touch with your fellow Heath®/Zenith users, place 
your short notice in Sextant’s classified section. The rate is only 
75<P per word with a minimum of 15 words. Send your 
typewritten ad and payment to: Sextant, Classified Advertising 
Department, 716 E St. SE, Washington, DC 20003. (Please 
include your name and telephone number for our records.) We 
need to receive ads for the Summer issue by April 14, 1982. If 
you have any questions, contact Pamela Juram at 202/544-2868. 


Cross reference programs for C/80 and TINY 
PASCAL are now available for HDOS. All 
variable, function and procedure names are 
included in the output. To order send $14.95 
each to Interactive Micro Systems, Box 21007, 
Columbus, Ohio 43221. 

NEW! H89/Z89 software from The Coding 
Pencil. AUTOLOGUE extends H:Boot to 
mount all SY:/DK: units, load device drivers, 
and display executable (ABS/BAS) files in 
selection-by-menu format. Function keys are 
used to execute files; alter menu; and mount, 
dismount, or reset diskettes. BASIC or MBASIC 
is automatically loaded prior to executing 
BAS files. AUTOLOGUE can reset SY0: and 
execute files from nonbootable diskettes, even 
in one-drive environments. $14.95 on a 5" 
diskette) $2.00 for introductory documentation 
(applied toward purchase). The Coding Pen¬ 
cil, 4812 SE 24th, Del City, OK 73115, 
405/677-7531. 


MICRO MEDIA MAGAZINE, a floppy Disk- 
Based Publication for the H19, H89, or Z89. 
For more information and a “FREE” Soft¬ 
ware Catalog write: Micro Media Magazine, 
Dept. SE, P.O. Box 402286, Garland, Texas 
75040. 

FORTRAN support for HDOS: Overlay pack¬ 
age, 9511 arithmetic library. MICROTRAN, 
76 Flintwell Way, San Jose, CA 95138. 

HELP WANTED: EDITORIAL ASSISTANT 
Gain Experience in periodical publishing 
through close contact with many phases of 
magazine and newletter production in our 
small, busy office. If you type 45 wpm and 
like to work hard, we can offer you a clerical 
job with a difference, and an opportunity for 
advancement. No smoking in the office. Con¬ 
tact Pamela Juram, Sextant Publishing Co., 
716 E St. SE, Washington, DC 20003, 
202/544-2868. 


AUTHORS: 

Help Sextant become an even more valuable 
tool for your fellow Heath®/Zenith computer 
enthusiasts by contributing an article for pub¬ 
lication. Were looking for human-interest 
stories, in-depth technical features, program 
descriptions, product reviews and tutorials 
which relate specifically to Heathkit® and 
Zenith systems. 

Your article in Sextant will give you the 
satisfaction of knowing you’ve communicated 
important information to other Heath® and 
Zenith users. Your efforts will also encourage 
the growth of the first independent magazine 
for Heath®/Zenith systems, which are often 
neglected in other publications. And, Sextant 
will reward you for your research and writing 
by paying you at higher rates than many 
microcomputing magazines. Send your article 
idea.in the form of a rough draft or outline to: 
Charles Floto, Editor, Sextant, 716 E St. SE, 
Washington, DC 20003. 


Luminaries 


William F. Buckley, Jr. is probably better 
known to you as a columnist and com¬ 
mentator, but his interest in Hugh 
Kenner’s review of word processing is 
not entirely academic. At press time, 
he’s in Switzerland writing his next book 
using a Z89. We await with interest his 
selection of a spelling correction pro¬ 
gram with the vocabulary he’d want. 

Ray Dotson is a communications equip¬ 
ment retailer in North Carolina who 
uses his Heathkit computer in business. 
He writes software for his own and other 
local businesses, as well as games like 
the typing program here. 

Arthur A. Frost is a retired professor of 
chemistry living in Arizona. He failed to 
say whether his simulation of Rubik’s 
Cube was the result of purely intellec¬ 
tual interest or whether he, like so many 
is addicted to the devious little device. 

J. C. Hassall has been designing com¬ 


puter interfaces for some time now and 
publishing many of his non-proprietary 
designs. His H & H Enterprises is also 
active in software and hardware inter¬ 
face design. 

Hugh Kenner has been published in 
small regional journals such as The New 
York Times Book Review, Harpers , and 
Bill Buckley’s National Review. When 
not “hammering some fairly tough type¬ 
writers [now printers] into Intensive 
Care”, he is a professor of English at 
Johns Hopkins University. 

Arnold R. Madeira, our Tiny Pascal 
reviewer and Nim mathematician, is 
employed by an electronic controls 
manufacturer in Rhode Island. He’s an 
engineering manager and also covers 
their Basic Four business computer. 

F. X. “Skip” Millor is relatively new to 
computers. A marketing specialist, his 
academic background is in photography. 


He put it all together to produce some 
interesting color slide graphics for a 
management meeting. 

Kenneth A. Patrick comes from a main¬ 
frame computer background. He may 
find that commenting on computer 
products, as in his spooler review, comes 
naturally: he has his own data processing 
consulting service in suburban Dallas. 
Jerry K. Pearlman is Zenith’s Senior 
Vice President for Finance. More im¬ 
portant to us, though, he’s also the 
executive responsible for the Computer 
Business Group which includes Heath 
and ZDS. 

Richard E. Smith, who programs his 
H89 without HDOS, is currently work¬ 
ing on a graduate degree in computer 
science. He’s worked several years de¬ 
veloping software for a variety of proj¬ 
ects, including operating systems, speech 
recognition, and computer networks. 


80 Sextant Spring 1982 







Can’t get enough information 
about Heath ©/Zenith computers? 


Buss: The Independent Newsletter of Heath Co. Computers will supplement the information you’ve received from Sextant. 
Since April 1977, Buss has been bringing Heath®/Zenith users up-to-date product news, tips from other users, and announce¬ 
ments from independent suppliers. 

BothBwss and Sextant are valuable to you in different ways. Compare below what each offers you: 


Buss 

• Short, concise articles with helpful hints to apply directly to 
your system. 

• News received by first class mail a week after editorial dead¬ 
line. You get important announcements fast. 

• Articles with information from over 150 different indepen¬ 
dent suppliers with products for Heath®/Zenith systems. 

• Published 16 times each year with short bits of timely, up-to- 
date information. 

• A chance to communicate with over 5,000 other Heath®/ 
Zenith owners by sending in questions, comments, or a “for 
sale” item. 


Sextant 

• In-depth technical articles to help you understand your com¬ 
puter better. 

• Enough time between editorial deadlines and mail date to 
publish more polished articles. 

• Advertising of compatible products for Heath®/Zenith sys¬ 
tems from independent suppliers. 

• Space to explore ideas about Heath®/Zenith computers in 
four issues per year. 

• Articles and tutorials dealing with both common and unusual 
questions about Heathkit® computers and Zenith Data Sys¬ 
tem. 


Be sure you’re getting all the information. Start your subscription to Buss today. A full refund is guaranteed any time you’re not 
satisfied. Buss is published about every three weeks and sent by first class mail (airmail overseas). Buss comes to you from 
Charles Floto, publisher of Sextant. 


U. S. & Canada Overseas 

24 issues $32 $42 

18 issues $26 $35 

12 issues $20 $25 


Payment must be in U.S. dollars payable on a U.S. bank, by international postal money order, or by Visa or MasterCard. 




The Independent Newsletter of Heath Co 


.Computers 


325 Pennsylvania Ave., S. E. 
Washington, DC 20003 
202/544-0900 


CIRCLE #116 ON READER SERVICE CARD 


Turn the page for highlights of available back issues... 

















Start your subscription to Buss: The Independent Newsletter of Heath Co. Computers with 
any of the following back issues. 

BUSS #26 — October 6, 1980 “Perso nal Computing '80 features HUG meetTng^l HSg parallel interface *Z89 add-ons demonstrated 
•HDOS graphics editor, LISP interpreter, chess ’...and another HDOS H19 graphics editor ’HDOS and CP/M utilities ’HT-11 
mailing list processor ’Stretching things a bit: H8 expansion kit ’H8 voice synthesizer ’...and a talking H8 software package 
•BUSS doubles staff ’Steven Robbins on HDOS enhancements & EDIT89 ’HDOS software for business & home ’Warren Shadwick's 
SYSCMD.SYS mods ’More HDOS patches ’...and two for Magnolia CP/M ’Trionyx plans Z80 CPI): cuts memory p rices ’Local 
club notes ’FOR SALE ’Supplier update ’A third HDOS graphics editor tflow to tell Heath Co. what vou want ^8" floDDies and 
Centronics printer on H89 ’BUSS Bits. --' 

BUSS #27 — October 28, 1980 ’Gerry Kabelman gives CHUG, HD OS preview J »HDOS mailing list dat a base heads new product 
list ’D. C. Shoemaker puts CP/M in perspective ’Do-it-yourself three drive H17 ’Time-shared Hll CPATCH without ID codes 
•Catalog errors, Dysan diskettes; H89 notes ’John D. Lovely's H89 modifications ’Questions from Robert Sloat, K4VGlT^’Engraved 
plastic labels offered ’H89 parallel output circuit ’Three HDOS packages from Jim Teixeira ’HUG experiences and H8 fixes 
•Latest on lower-case output from H9 input ’FOR SALE ’Supplier update ’ Local club notes ’Diablo 1fi4fl output ’M orp HDOS 
enhancements for H89s ’BUSS Bits ’Robert Kelly Rosier on HDOS patches fHowDon^ 

BUSS #28 — November 19, 1980 delay RF interfer ence 1 imits^’Hob, Ellerton taking over as HUG manager^} 

•CP/M editor supporting H19 comes on 5.25" disk ’Suggestions from an indignanTH^^ Practical BASIC Programs 

•Business software for 64K H89 with CP/M ’DBUG debugged ’40K CP/M adventure games Choose hardcoov or video output in’* 
M^Si£j*...or cre ate two versions of the program ’ New version of BASIC compiler coming for 56K HDOS ’CP/M comments and 
H89 modifications fT/TTnisln^^ spooler ’FOR SALE ’Local club notes ’HDOS date mod correction & 

more on PATCH ’More on the HA8-3 color graphics board ’More on RFI fixes for H19/88/89 ’TI-810 help wanted ’BUSS Bits. 

BUSS #29 — December 16, 1980 ’HDOS mods free user from system hassles ’Osborne business software on Heat h 5.25" disks 
•HDOS MBASIC inventory system ’HDOS checkbook program supplied as object code <0m 

hints ’HT- ULBASIC patches, tor Extended Arithmetic C hip *HDOS graphics & text editTng”^irograrns7^ used 

with H8 f £Prob^ — H g re ij a bnjty ’H89 expansion project ’More on STAND-ALONE ’Hex 

output fronTTTTR!)^^ ’FOR SALE ’BUSS Bits. 

BUSS #30 — January 6, 1981 ’Alternate source for H47_8" drives ’H89 interface to Centronics 737 printer ’Astrological software 
•Device driver gives hard copy of H19 display ’Three products for ET-3400/ETA-340(T~systems ’Modifying Magnolia CP/M for an 
H89 with H88-7 ROM ’HCA-4 anti-glare CRT filter installation ’William LeFebvre on HDOS BASIC's FREEZE command ’Deland 
C. Flodman on H8 RAM from Trionyx ’Trionyx RAM & Z80, 118 col or grap hics ’D. C. Shoemaker on the H17-3 modification 
•How many tracks on a 5.25" disk? ’H77 experiences ’FOR SALE tflTl comments from”HRic^ update ’Micro 

Media Magazine shows off H19 graphics ’HDOS utilities from TBT Digltin"’^ ^ & Musi c Projects ’Siebert 

Ickler's H89 procedure ’HDOS coupon management system ’The Rumor Mill *fA1 Dallas on HDOS dTrectoFy^fbrmaT^Local club 
notes ’BUSS Bits. ^-"-—^ 

BUSS #31 — January 27, 1981 ^TleatJh®^^ $95 HDOS Pascal ’HDOS software for MBASIC 

or HDOS BASIC ’CP/M softwarelinBHjSir^ eases single-drive CP/M ’H89 I/O expansion kit 

•HDOS "Invasion" game ’HDOS home finance system ’Heath/Zenith seen passing Commodore in 1981 sales ’New Keyboard Studio 
products ’Super RTTY for HDOS ’Single voltage converter for Trionyx H8 RAM ’Roy S. Reichert's H89: "almost total silence" 
•HDOS word-processing for $60 ’Osborne BASIC software on cassette and disk ’HT-11 XBASIC enhancements ’No improvement 
likely in Heath® support of Hll ’CP/M master catalog program and text formatter Bob Ry an \[k es 

ESCON Selectric interface ’Cooling the H17-3 ’FOR SALE ’Get 14 more sectors perHDTT^TI^^ MBASIC statistics 

programs ’Osborne business software for CP/M & CBASIC 2 ’Bilofsky's MYCHESS graphics, INVADERS, CP/M versions ’Supplier 
update ’Local club notes ’W. R. Leach's patches to HDOS INIT ’BUSS Bits. 


BUSS #33 — March 10, 1981 ’MBASIC program generator ’HDOS enhancement from^Creative Resources ’HDOS 2.0 INIT 
replacement ’Modification adds auto-repeat to H19 keyboard ’Trionyx plans new H8 motherboard ’SPOOLER review ’UCSD 
Pascal li braries for H8 color graphics board ’HDOS 2 .0 notes from vviiliam N. Tavolga ’HDOS 2.0 modifications from Steven 
Robbins ^ [T. Stephen"~Tinius on CP/M® file structure^ "Invaders" game supports sound generator ’HDOS MBASIC inventory program 
•FOR SAfjT nr Su^^ upport for J$rlT8§, H 1 1 ’H89 disk reminder ’...Points to added value of H77 pilot light mod 

•PC card for Pat Swayne's H8 Z80 mod ftlUP ^ HDOS MBASIC word processing programs ’Brief observations on CP/M 

^ocaTcTub^otes^ ’Hig processor speed-up^ LFE BUGdebugged again ’FORTH for CP/M on H89 or H8/H19 ’BUSS Bits. 

BUSS #34 — March 25, 1981 ’Programs convert data files between CP/M® and HDOS )’H89 board has clock, serial «Sc parallel 
I/O ’HDOS proofreading aid ’HDus program steals 14 sectors from directory *h« discussion to kick off West Coast Computer 
Faire ’...with Commsoft showing ROOTS89 ’...Magnolia's engineers demonstrating Z89 products ’...and others showing 
Heath®/Zenith add-ons I^TTTwITFreHFrUtT^ support for HDOS ’Hulland Disk Operating System 

for H8/H89 ’WH54 review^GJFTmTir^ Other HA-8-3 graphics board owners ’More patches to enhance 

HDOS 2.0 likes modified HD“sysWfTr>|’Morse code practice 

program fotHTnU!HWBAST(T'“ ss T!or^ on H19 ’HDOS BASIC 

mechanical engineering programs ’FOR SALE ’Modified SUBMIT fix ’H8 active bus terminator ’...and a bus expansion note from 
Bill Richter ’Supplier update ’Local club notes ’INIT modification correction ’BUSS Bits. 


BUSS #35 — April 21, 1981 ’Special report on the Sixth West Coast Computer Faire by John Beetem ’Vendors supporting 
Heath®/Zenith discuss cooperation ’Comments on H47 8" disk drive ’HDOS spooler from Software Toolworks ’Heath/TRS-80 file 
exchange ’Custom HDOS printer drivers ’Two HDOS programs_from Andex Industries ’For SALE ’Doc's assembly course for 
HDOS ’A bug in patches to enhance HDOS 2.0, etc. ’Interactive job utility for HDOS ’Supplier update fM'B’ASTC tTTc^ 
ffrrnTK) ’BUSS Bits. ~--- _ 

BUSS #36 — May 19, 1981 ’Conference 8 ^’"A Remarkable Experience" under HDOS for 
$10 ’'Touch-Typing Tutor' fraTfr 5S XfraSoTT 4M,r ^^ MBASIC modeling and simulation package 

•Plotting & digital logic analysis for HDOS MBASIC |*TTTri??nTr?nefTrr^ on converting H8 

cassette software for H88 ’Patches to HDOS - pros artf± sss wrrs’ sra *1tliri!o^ repeat for H19/88/89 

keyboard ’Epson MX-80 printer configuration for HDOS ’H89 sound effects board supports game paddles ’"Missile Control" game 
for HDOS ’H89 controller doubles drive capacity under CP/M ’HDOS line editor uses H19 features ’Products under development 
by Trionyx Electronics ’FOR SALE ’Whitesmiths C and Pascal for HT-11 ’$100 board boosts 48K H89 to 64K ’H88/H89 parallel 
port/clock schematic offered ’Supplief“TrpdEle ■Graphic products frcrm Far Field Software ’BUSS Bits. 








, 'JjfkL' j./uvdl' 

/njUAMs 





























































Back issues may be charged against your subscription or purchased separately for $2 each. 

See subscription information on p. 81. 

BUSS #38 — July 14, 1981 *17 independent suppliers preferred to HUG and Softstuff ‘Heath announces new Z-80 CPU card for 
H8 computers ‘Spelling and text analysis programs under $40 ‘Prograjjjjoa&tdjg***^ for H89 and H8 ‘$25 text 

editors for HDOS or CP/M ‘More on continuously running computers C*Dr. Rousseau’s ..sic Kr-M.1Z . aiDj^S u Pp1i pr update ‘Free HDOS 

device driver for Paper Tiger 560 Printer ‘400 Kilobyte 5.25" drive package under $500 ‘Putting CP/M® and business hardware 
in perspective ‘HDOS device driver for Magnolia disk controller ‘Text editor comments and ^ pm_offor.for Spary^h . 
French, German or Italian ‘FOR SALE ‘HDOS and CP/M summaries, 64K RAM modification (‘Minimize both disk wear and head 
banging^ ‘HDOS text processing & games ‘H89 screen noise fix ‘H89/H88/Z89 8" disks/controller system ‘HDOS screen image 
storage & arithmetic drill programs ‘Obstacle course & "Remarkable Experience" hints ‘BUSS Bits. 


BUSS #39 — August 4, 1981 ‘Isn’t it about time w e harLa magazine/? ‘XtraSofjLxetail sales sys tems <‘$45 Forth for HDOS 
•Anadex printer modified for Heath/Zenith systems' t*Don Harton on "A Remarkable Experience^ HDOS~Relocating Debugging 
Tool • ROOTS89 review ‘Supplier update ‘FOR SALE •TARCO wares include hard disk with n4T-like 8" disk ‘Disk dump for 
CP/M ‘Percom making H89, H8 drives ‘Detailed user ratings of top 5 software suppliers ‘Voice synthesizer uses English text 
input ‘HDOS executive appointments secretary ‘HUG SY: device driver review ‘More on 8" disk controller ‘MBASIC INP without 
buffer garbage ‘EasySoft Despooler for HDOS ‘Keyword in context program for HDOS and CP/M® ‘Software tells time to HDOS 
•New version of Epson printer driver ‘Directory revision 4 ‘BUSS Bits. 

BUSS #40 — August 19, 1981 ‘Phoneme based voice synthesizer for H8 bus ‘Multilingual H19 ‘Trionyx Z80 CPU for H8 
•Another HDOS assembler ‘Walt Bilofsky o n adventuring into computing ‘For Sale ‘T ypesetting service accepts ASCII input 
•BUSS adds experienced directory compiler C^HA-8-3 graphics board owner's note #2 y Energy Miser for HDOS ‘Uses H8 in machine 
shop; wants device driver help ‘CP/M® communications program "Ll-^^OU newslbuer ‘Help needed with H88 cassette load ‘Disk 
recovery program ‘...And loader for lowest 8K of RAM ‘D-G offerings ‘Software Toolworks T-Shirts ‘Random number seed for 
Benton Harbor BASIC ‘LPH24 modifications ‘More on UltiMeth H89 monitor ‘Another solution to disk banging ‘Changing a byte 
of PIE ‘Patching LPH14.DVD for Vista V300 ‘Centronics 737 device driver enhancement ‘8" & 5.25" floppy disk holders ‘Supplier 
update ‘Local club notes ‘BUSS Bits. 

BUSS #41 — September 15, 1981 ‘Z89 ^ets drstiT^tiom booat^‘Multistrike ribbon cartridge reloading ‘Improved HDOS status 
command ‘Cassette driver for HDOfT"”^^graphics in MBASIC ‘New LPH14 driver ‘Using PIE with DESPOOL 
•Keyboard Studio adds 400K drives, word processor ‘ MBASIC monthly expense reports ‘Electrolab s offers Tandon TM 100-4 disk 
drives ‘Former Sears programmers describe XtraSoft Experiences of 1> e 'Faster Z80 operation for H19A 
•ELIZA for HDOS ‘Circuit analysis in HDOS or CP/M•Zemrnn^Ts^^ index on disk ‘HDOS, CP/M, 

UCSD P-System file conversion |E*ASIC^ Interactive calculator and converter for HDOS ‘1147 8" disk 

copy program ‘Improved word processor”Trom Sl r’TionVputer TYtT erprises ‘Special offer on voice synthesizer V-8 Model II ‘MCS-48 
assembler runs under HDOS MBASIC ‘FOR SALE ‘BUSS Bits. 

BUSS #42 — Oc tober 7, 1981 ‘8088 coming for H8; 95 11 arithmetic card price cut ‘Universal printer device driver for HDOS 
{^Differences between 40-track and §t)-track disk drived* 118 PC board heat-sink extensions *1189/19 graphics on Epson MX-80; 
spelling aid ‘San Francisco firm sets type trom Art'll files ‘HDOS MBASIC stock portfolio manager ‘Dale Buhanan comments on 
EDIT19 ‘Dust covers & CP/M® tape backup ‘New version of AM95 11 FORTRAN arithmetic library ‘HDOS Morse code software 
and hardware ‘Another (#3) note to HA-8-3 graphics board owners d*5-25" disk drive problem fixeq/^ New versions of VISED and 
TPROC ‘H8-7 breadboard with Z80 CPU ‘Assorted fill software • SP E L L a nd EL 1Z A I ro m bo it ware Toolworks ‘Engraved key tops 
for H19, Z89 ‘Four drive HDOS ‘Zenith’s double-density controller, 160 track drives, Z90 ‘HFORTH Video Editor ‘FOR SALE 
•TocaT^ubliotes ‘Supplier update ‘BUSS Bits. 

BUSS #43 — October 21, 1981 ‘BUSS increases telephone accessibility ‘Housemaster board for 1189< ^^ ‘Direct 

connect modem for H19, H89 ‘Lu m-Buckles continues Zenith sale ‘Galacti c Warrior & Y-Wing Fighter^*f ile compactoTr"T, 
Caverns of the Doomed, SOFTalk (* Disk drive repair service recommende<T) ‘HDOS RTTY programs ‘Writing hints from Sextant 
Technical Editor John Walker ‘HDOS FortfT from MCA ‘HDOS MBASIC Personal Files Management ‘Using HDOS dump with 80 
track disks ‘H8 computer repair service ‘FOR SALE ‘256 graphic characters for the 1119/89 ‘Supplier update *8" disk controllers 
for H8, H89 ‘Local club notes ‘Ronald La Claustra on Sextant and RE Mark ‘BUSS Bits. 

BUSS #44 — November 10, 1981 ‘BUSS to celebrate 5th birthday at Computer Faire ‘Heathkit® catalog clarified ‘Enhanced H19 
firmware ‘HA-8-3_support for_Pascal MT+}‘H19 processor speeded up to 4 MHz ‘H8/H89 arithmetic processor board standard 
proposed ‘UCSD Pascal handbook & communications package ‘CP/M® MBASIC compiler warnings ‘HDOS MBASIC "Morse Code 
Tutor" ‘Prices cut by D-G Electronic Developments Co. ‘HDOS & CP/M® MBASIC interstellar combat game with graphics 
•CP/M® software for EMI, billing ‘NTS microprocessor course pamphlet index ‘Automatic H89 controller selection supports mixed 
hard- and soft-sectored disks ‘Livingston Logic Labs 8" disk controller experiences ‘FOR SALE ‘Four Heath CP/M 8" disk 
formats ‘Z89s used by Weather Service ‘Bugs in the Heath Z80? ‘Lloyd Dinkins on competition ‘...and second thoughts from 
Ronald La Claustra/^M lcroWTT’^cquaTntances ^ Chicago likely site *119 help wanted ‘4 MHz CPU 

for H/Z89, 19) ‘SUBMTT^oFTtDOS*^ and tape backup ‘Supplier update ‘Request fur 

assistance -BUSS Bits. 

BUSS #45 — December 15, 1981 ‘Maxi-Prin t device drivers for HDOS ‘Talking adventure game ‘Real time clock for H89, H8/Z80 

•Z80 panel monitor ‘HDOS MX80 graphics ‘CP/M® MBASIC attorney time and billing ^xperTeMices w 1IIi the Mugnulia UUUbUT 

'3ensiT5 r Tontroll^ ‘H19 ACM file ‘HDOS MBA SIC statistics *H 8 gfoUhd connector"kit • > 7l3Tliardw 

"‘IviBAS 1C creditcard management ‘Accounting package from XtraSoft ‘HDOS stock market trend ‘Thomas Cutright reports Z89s 
used by physicists ‘MicroNET carries Z89-11 report • iviulti-Print spooler for HDOS ‘"A Galactic Experience" for HDOS 
•Benchmark program ‘FBE supports graphics, parallel I/O, MX-80 ‘FOR SALE • ’Z100' rumors abound ‘File transfer and 
communications for HDOS or CP/M® ‘Najay Systems offers H89 4 MHz instructions ‘Local club notes ‘Experiences with H47, 

147, Z89 16K RAM expansion ‘Supplier update ‘HDOS standards clearinghouse proposed ‘BUSS Bits. 

BUSS #46 — January 5, 1982 ‘Sextant premiere issue shaping up ‘Sextant classified ads available ‘HDOS MBASIC checking 
account super visor * H89 clock/calendar, sound ‘CP/M flight simujator 

•Improved HDOS program catalogs HDOS disks, too ‘H89 CP/M® 

communications program ‘HDOS UNDELETE, MAZERACE; CP/M STATPTCH ‘Assistance wanted ‘D-G cuts prices on memory 
and software ‘Price changes, new modem from M.I.-8 ‘HUG SY: comments ‘FOR SALE ‘Local club notes ‘Spool-N-Go now 
supports more disks, printers ‘New version of Video Scribe ‘Supplier update ‘H19/H89 detached keyboard ‘MBASIC MAIL-IT for 
HDOS or CP/M £"Pirate“ FighterS) ‘BUSS Bits. 

Buss, 325 Pennsylvania Ave., S.E., Washington, DC 20003,202/544-0900.